通过RepoSync的方式进行同步代码

    GitHub Ac­tions的配置文件叫做 work­flow 文件,存放在代码仓库的.github/workflows目录中。work­flow文件采用 YAML 格式,文件名可以任意取,但是后缀名统一为.yml,比如WowYiJiu.yml。一个库可以有多个work­flow文件,GitHub只要发现.github/workflows目录里面有.yml文件,就会按照文件中所指定的触发条件在符合条件时自动运行该文件中的工作流程。

一:在仓库的.github/workflows路径下添加workflow文件

下面是一个同步上游分支代码的workflow文件示例

name: sync-WowYiJiu # 名称随意
on: 
  schedule: 
  - cron: '0 0 * * *'
  workflow_dispatch: 
  watch: 
   types: started 
  repository_dispatch:
    types: sync-WowYiJiu
jobs: 
 repo-sync: 
     env: 
       PAT: ${{ secrets.PAT }} 
     runs-on: ubuntu-latest 
     if: github.event.repository.owner.id == github.event.sender.id 
     steps: 
      - uses: actions/checkout@v2 
        with: 
          persist-credentials: false 
    
      - name: sync WowYiJiu/WowYiJiu
        uses: repo-sync/github-sync@v2 
        if: env.PAT 
        with: 
          source_repo: "git@github.com:username/repository.git" # 上游仓库地址
          source_branch: "main" 
          destination_branch: "main" # 按照自己仓库分支名称修改
          github_token: ${{ secrets.PAT }} 

二:申请Personal access tokens

    点击Github用户设置Developer setting,然后点击Personal access tokens来生成token,勾选repo权限生成就可以了,生成的token要记下来,因为只会显示一次哦,不然就只能再重新生成一次。

三:将申请到的token填入Screts

    在仓库中点击SettingsScretsNew repository scret,在Name中填写PAT(Name值是根据workflow文件中的环境变量来的),在Value中填入申请到的token。然后就可以愉快地用Github Actions自动同步上游分支代码啦。

参考

Github Actions官方文档


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!