使用GitHub Actions自动部署Hexo

使用GitHub Actions自动部署Hexo
因是前言
之前每次部署 Hexo 都需要运行 hexo cl & hexo g & hexo d 指令三件套完成推送到远程仓库,换一台电脑还要重新部署环境,而且随着文章越来越多,编译的时间也会越来越长。现在通过 Github Actions,我们只需要在每次完成博客的编写或修改以后,将改动直接 push 到远程仓库,之后的编译部署的工作统统交给 CI 来完成即可。
本文假设你已经有了自己的 hexo 静态博客,因此只介绍自动化部署的过程合设置。
一.创建GitHub仓库
- 创建 blog仓库用来存放 Hexo 源码,仓库的类型是private
- 创建 yourname.github.io仓库用来存放静态博客页面,仓库类型是public(yourname修改为自己GitHub用户名)
二.部署密钥
1.生成密钥
在 Git Bash Here 或 终端 中执行以下命令,一路按回车直到生成成功
| 1 | $ ssh-keygen -f github-deploy-key | 
将会在当前目录下生成 github-deploy-key 和 github-deploy-key.pub 两个文件
2.配置密钥
在 blog 仓库 Settings -> Secrets and variables -> Action  页面上点击 New repository secret 添加以下参数:
| Name | HEXO_DEPLOY_PRI | 
|---|---|
| Secret | github-deploy-key文件内容 | 
在 yourname.github.io 仓库 Settings -> Deploy keys  页面上点击 Add Deploy key 添加以下参数并勾选 Allow write access 选项保存:
| Title | HEXO_DEPLOY_PUB | 
|---|---|
| key | github-deploy-key.pub文件内容 | 
三.配置 Github Action
在 blog 仓库根目录下创建 .github/workflows/deploy.yml 文件,目录结构如下。
| 1 | blog (repository) | 
在 deploy.yml 文件中粘贴以下内容:
| 1 | name: 自动部署 | 
四.重新设置远程仓库和分支
在本地博客根目录下启动Git Bash Here 或 终端 ,使用 git 指令重设仓库地址:
| 1 | git remote rm origin # 删除原有仓库链接 | 
推送本地源码到远程仓库:
| 1 | git branch -M master # 切换到master分支,自行修改 | 
五.查看部署
进入存放源码的 blog仓库,点击Actions页面即可查看到自动部署的情况,每次本地推送到远程仓库时,会触发自动部署。当任务完成后查看yourname.github.io 仓库和您的博客 https://your.github.io,如果不出意外的话已经自动编译部署好了。













