批改:文章批改于 2021/3/ 1 日,昨晚中午写完的第一套计划白天测试的时候不能实现主动 Gitee Pages,所以紧急进行了批改,并对整个流程的细节进行了更具体的形容,置信跟着走下来,大家都能够打造出本人超好用的动态博客写作、部署脚本,从此真正将更多的精力投入的写作中!!!
我的集体博客是通过 Github 的 Pages 技术搭建的动态博客,应用 vuepress
驱动。因为 Github 在国内环境拜访速度慢,并且不够稳固,所以通常对外介绍应用 Gitee 的镜像博客仓库,然而每次都须要在推送 Github 之后去 Gitee 上对应的仓库进行手动同步,就无端减少了很多反复的工作量,通过多方搜寻和实际,最终选定了 Github 一个比拟新的技术 — Github Actions
实现代码主动 Build,同步到 Gitee,主动在 Gitee 实现 Pages 性能。
上面来看一下如何操作吧:
1.Github 和 Gitee 增加公钥
Window 下通过 git bash 生成公钥
输出 ssh-keygen
,而后连按三下回车
Gitee 和 Github 增加公钥
检测公钥是否胜利增加
ssh -T git@github.com
ssh -T git@gitee.com
#返回如下图所示后果,则胜利增加公钥!
2.Github 仓库增加 Token
- 生成账号 Token
- 在 Secret 中增加 Token
3.Github 仓库增加私钥
- 进入 Github 想要同步的仓库 - 抉择 Settings 进行设置 - 抉择 Secret 进行设置
- 创立新的仓库 Secret
GITEE_RSA_PRIVATE_KEY
- 增加
GITEE_PASSWORD
同之前一样,在仓库里增加名为 GITEE_PASSWORD
的 Secret,内容是你的 Gitee 账号密码。
最初检查一下是否在 Github
中增加了 ACCESS_TOKEN
,GITEE_PASSWORD
,GITEE_RSA_PRIVATE_KEY
三个密钥。如下图:
???? 重头戏来了!!!
在 GitHub 仓库里增加 Actions 脚本文件!!
- 工作流脚本名字能够自定义,随便起!!
- 复制上面的主动打包及同步脚本
- 在之后每次 有 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 执行的后果图!!
文档信息
版权申明:自在转载 - 非商用 - 非衍生 - 放弃署名(创意共享 3.0 许可证)
发表日期:2021-03-01 20:42:19 星期一
更多精彩内容查看我的技术博客