GitHub Actions自动部署Hexo博客
GitHub Actions自动部署Hexo博客
丨浅笑安然丨转自使用Github Action实现全自动部署,仅供个人📚学习记录。
教程常量声明
常量名 | 常量释义 |
---|---|
[Blogroot] | 本地存放博客源码的文件夹路径 |
[SourceRepo] | 存放博客源码的私有仓库名 |
[SiteBlogRepo] | 存放编译好的博客页面的公有仓库名 Site指站点,教程中会替换成 Github、Gitee、Coding |
[SiteUsername] | 用户名 Site指站点,教程中会替换成 Github、Gitee、Coding |
[SiteToken] | 申请到的令牌码 Site指站点,教程中会替换成 Github、Gitee、Coding |
[GithubEmail] | 与github绑定的主邮箱,建议使用Gmail |
[TokenUser] | Coding配置特有的令牌用户名 |
1 | # 在记事本中逐个记录,方便替换 |
Github Action使用教程
获取Token
访问Github
->头像
(右上角)->Settings
->Developer Settings
->Personal access tokens-
>generate new token
,创建的Token名称随意,但必须勾选repo项.随后记录下了Token
。
配置deploy项
打开站点配置文件[Blogroot]/_config.yml
,找到deploy
配置项,使用之前生成的[SiteToken]
和各个站点仓库URL
来组装地址。
1 | deploy: |
配置Github Action
在[Blogroot]
新建.github
文件夹,注意开头是有个.
的。然后在.github
内新建workflows
文件夹,再在workflows
文件夹内新建autodeploy.yml
,在[Blogroot]/.github/workflows/autodeploy.yml
里面输入
1 | # 当有改动推送到master分支时,启动Action |
重新设置远程仓库和分支
删除或者先把
[Blogroot]/themes/butterfly/.git
移动到非博客文件夹目录下,原因是主题文件夹下的.git
文件夹的存在会导致其被识别成子项目,从而无法被上传到源码仓库。在博客根目录
[Blogroot]
路径下运行指令1
2
3
4
5git init #初始化
git remote add origin git@github.com:[GithubUsername]/[SourceRepo].git #[SourceRepo]为存放源码的github私有仓库
git checkout -b master # 切换到master分支,
#2020年10月后github新建仓库默认分支改为main,注意更改
# 如果不是,后面的所有设置的分支记得保持一致添加屏蔽项
因为能够使用指令进行安装的内容不包括在需要提交的源码内,所有我们需要将这些内容添加到屏蔽项,表示不上传到github上。这样可以显著减少需要提交的文件量和加快提交速度。
打开
[Blogroot]/.gitignore
,输入以下内容:1
2
3
4
5
6
7
8
9
10.DS_Store
Thumbs.db
db.json
*.log
node_modules/
public/
.deploy*/
.deploy_git*/
.idea
themes/butterfly/.git如果不是
butterfly
主题,记得替换最后一行内容为你自己当前使用的主题。之后再运行git提交指令,将博客源码提交到github上。
1
2
3
4git add .
git commit -m "github action update"
git push origin main
#2020年10月后github新建仓库默认分支改为main,注意更改
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果