(调教hexo) hexo + butterfly 主题的配置方法 | GitHub CI/CD 自动部署
关于hexo butterfly主题的官方文档在此~
关于yaml的一些介绍
众所周知hexo的主题配置文件为yaml文件(如butterfly主题的_config.butterfly.yml
)。
其实yaml文件与在语法上与json文件类似。
1 |
|
就这些了。
_config.butterfly.yml
配置额外说明
官方文档说的很详细,在此补充一点点。
配置
menu添加链接:
多个相同社交链接:
咱有好几个常用邮箱,因此只能使用多个相同图标,众所周知在同一个object中不能出现相同键值对。
但实际上 social-favicon
的键值对应的是font-awesome的class,所以:
(加上些奇奇怪怪的classname)
“美化”(其实就是修改主题颜色)
cdn
可以在配置文件底部将第三方cdn改为local(那么需要额外安装)
原来主题默认cdn是jsdelivr,但由于某些众所周知的原因而难以使用,解决方法见下。
其实这种方法也可以解决cdn问题,~可是咱搞不懂 搞了半天没有成功(悲。
白嫖 GitHub CI/CD 部署
~~每次都要开电脑写太烦了,~~有了这个就可以直接用网页版GitHub写,或者clone仓库到本地机上来写了。
自动部署
可以在同一个仓库内进行,但考虑到仓库体积问题建议分为两个仓库。
- 新建一个仓库
- 添加 Actions Key (Settings => Secrets => Actions),内容为自己的local ssh private key(在本地使用
ssh-keygen -t rsa -b 4096 -C "Hexo Deploy Key" -f github-deploy-key -N ""
,然后到.ssh/id_rsa
中获取private key),命名为HEXO_DEPLOY_PRIVATE_KEY
(若是其他的记得在下面 workflow file 里改掉配置) - 添加 workflow
转到 Actions
清空默认的workflow
,加上如下的内容:
1 |
|
记得在源文件中的 _config.yml
底部修改deploy设置
例如:
链接本地仓库
1 |
|
将本地的 ssh key 添加到GitHub Settings
仓库clone到本地:
1 |
|
提交:
1 |
|
解决cdn问题
使用国内cdn
推荐dogecloud(要实名认证)
使用 GitHub Pages
众所周知GitHub pages 提供免费的 “速度可观”的网站托管服务。所以咱就发挥白嫖精神 勤俭精神,使用 GitHub Pages 作为cdn
毕竟短期内*.github.io/path 不太可能被ban
(打开控制台网络面板,把需要用到的内容保存下来,上传到GitHub任意公开仓库)
记得准备好 font-awesome 的依赖文件(处于 的前一目录 webfont文件夹下)如图:
然后修改配置文件:
然后就不会再碰见 connection_reset 了: