github自动推送到gitee

使用Github Actions实现代码推送Github自动同步到Gitee镜像仓库! - 知乎 (zhihu.com)

1.Github和Gitee添加公钥

Window下通过git bash生成公钥

输入 ssh-keygen ,然后连按三下回车

image-20210426005550510

Gitee 和 Github 添加公钥

image-20210426010131315

检测公钥是否成功添加

ssh -T git@github.com
ssh -T git@gitee.com
#返回如下图所示结果,则成功添加公钥!

img

2.Github仓库添加Token

1. 生成账号Token

img

2. 在Secret中添加Token

img

3.Github仓库添加私钥

1. 进入Github想要同步的仓库-选择Settings进行设置-选择Secret进行设置

img

2. 创建新的仓库Secret GITEE_RSA_PRIVATE_KEY

img

3. 添加 GITEE_PASSWORD

同之前一样,在仓库里添加名为 GITEE_PASSWORD 的Secret,内容是你的Gitee账号密码。

最后检查一下是否在 Github 中添加了 ACCESS_TOKENGITEE_PASSWORDGITEE_RSA_PRIVATE_KEY 三个密钥。如下图:

img

重头戏来了!!!

在GitHub仓库里添加 Actions 脚本文件!!

img

- 工作流脚本名字可以自定义,随意起!! - 复制下面的自动打包及同步脚本 - 在之后每次有 Push 请求的时候,该脚本就会自动执行,完成云端Build静态文件部署到 gh_pages 分支,然后将代码同步到 Gitee 的镜像仓库,并且自动执行 Pages 的 Update 操作!!!

自动打包及自动同步脚本

name: A TO A:GH_PAGES
on: [push]
jobs:
  build-and-deploy:
    runs-on: ubuntu-latest
    steps:
    - name: Checkout
      uses: actions/checkout@master

    - name: Build and Deploy
      uses: jenkey2011/vuepress-deploy@master
      env:
        ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}
        # 你要操作的目标仓库
        TARGET_REPO: china-fanxin/vuepress-blog
        # 构建结果存储的分支
        TARGET_BRANCH: gh_pages
        # 要使用的构建命令
        BUILD_SCRIPT: yarn && yarn build
        # 构建结果存储目录
        BUILD_DIR: docs/.vuepress/dist/
  sync:
    needs: build-and-deploy
    runs-on: ubuntu-latest
    steps:
    - name: Sync to Gitee
      uses: wearerequired/git-mirror-action@master
      env:
        SSH_PRIVATE_KEY: ${{ secrets.GITEE_RSA_PRIVATE_KEY }}
      with:
        # 来源仓库
        source-repo: "git@github.com:china-fanxin/vuepress-blog.git"
        # 目标仓库
        destination-repo: "git@gitee.com:china-fanxin/vuepress-blog.git"
  reload-pages:
    needs: sync
    runs-on: ubuntu-latest
    steps:
      - name: Build Gitee Pages
        uses: yanglbme/gitee-pages-action@main
        with:
          # 注意替换为你的 Gitee 用户名
          gitee-username: china-fanxin
          # 注意在 Settings->Secrets 配置 GITEE_PASSWORD
          gitee-password: ${{ secrets.GITEE_PASSWORD }}
          # 注意替换为你的 Gitee 仓库,仓库名严格区分大小写,请准确填写,否则会出错
          gitee-repo: china-fanxin/vuepress-blog
          # 要部署的分支,默认是 master,若是其他分支,则需要指定(指定的分支必须存在)
          branch: gh_pages

功能实现效果

完成了上述配置后,就已经可以实现当有代码 Push 到 Github 后,自动将代码 Build 生成静态文件 Pages ,并且将代码同步到Gitee 上,并自动 Pages !! 如下的 Actions 执行的结果图!!

img

© 2021 hanbaoaaa record.浙ICP备20005263号
asdad
联系方式 asdasd
2021-5-8 4:19
sss
回复数 (0) 点击展开
加载更多

新增评论

称呼
联系方式
邮箱(选填)
内容

提交

取消