实现自动更新Blog(actions-gh-page)
简介
群友“竹林里有冰”的Blog有一个部署方案,如下:
我的博客部署方案
开始码GitHub Actions代码
如果不想写的话可以借鉴:
[^1] PILIHU2022.github.io/Actions
[^2] 竹林里有冰的代码
[^1]: 我的Github Blog是直接部署到GitHub,所以省略了竹林里有冰的一些代码,可看注释掉的代码
[^2]: 这是竹林里有冰的代码,部署到VPS中
安装Node.js
由于GitHub Actions没法使用Ubuntu的apt包管,所以只能使用actions/nodejs
,使用@来指定版本,我这里指定的是version 3中的Node.js 21版本,代码中的actions/checkout
只用于切换到该仓库;
安装相关依赖
你需要将你本地仓库中的package.json添加到GitHub仓库中,代码中是这样的:
1 | - name: Install Dependencies |
为每个文件重新设定最后修改时间
这一步其实是挺重要的,Hexo框架生成每篇文章的最后修改时间的依据是该文件的最后修改时间,而对于 Github Action 的容器来说,每一个文件都刚刚被下载下来,都是最新的,这就会导致你的每一篇文章每次部署时都会被认为刚才修改过。
我们这边可以直接使用 git 记录的时间来作为文件的最后修改时间。
设置时区
Blog基本都是用来给自己看的
所以时区当然要设置成中国标准时间(东八区)
使用
1 | export = TZ='Asia/Shanghai' |
生成网页
1 | yarn build |
如果不需要部署到VPS的到此处就可以了
以下是使用GitHub Pages来更新Blog(该段未完成)
若想部署到VPS,参考部署到VPS
Q:为什么我已经将GitHub Actions搞定了,且将博文上传至GitHub仓库了,但是没有更新,GitHub Actions也没有报错
A:请检查你的GitHub Pages设置(位置在Settings > Pages)中的“Build and deployment”,在source中选择Deploy from a branch
将Blog部署到VPS
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 PILIHU's Blog!
评论
TwikooUtterances