
大四开始写毕业设计了,在学的过程中想记一记笔记,但是之前的 hexo 博客没动很久了,就想着把博客搬迁下顺便起个头,激起一些学习的劲头。
为什么选择 Hugo
因为静态的网站生成框架也没几个,搜索的时候也就 hexo、hugo、jekyll。之前用的 hexo 确实很顺手,但是自己改网站,加功能的时候搞了好多依赖,感觉很臃肿,当时的博客文件夹带上依赖大概就有 500+MB,现在换了 hugo 看下是 90MB。
hugo 还有一个特点就是生成网站的速度很快。这一点我没有截图作比较,但是明显的感觉 hugo 比 hexo 快好多。引用一片文章里的一句话:
根据相关博主提供的数据,他 200 篇左右的博文用 Hexo 需要 10 分钟去生成静态网页,而 Hugo 只需要 10 秒。
所以感觉要是长期写东西的话,选个好的框架也是个长远的选择。
hugo 在 github 上的 ⭐ 也比 hexo 多。
不过在迁移的过程中,最大的感受就是:Hugo 在国内的使用者不多。
网上想要找个合适的教程非常难,然后就是去官网啃英文的文档。而且 hugo 框架和 hexo 比起来完全的不一样,鄙人 go 还没接触过,主要还是自己菜。一开始选了coder这个主题,但是觉得还是对 hugo 本身的了解不够多,四处碰壁,最后选择了一个有国人维护的也是我现在在用的主题,就是DoIt,这个主题也是从上一代的主题迭代下来的,因为原来的那个已经很久没有维护了(可能觉得已经完工了)。这个主题的教程也很友好,摸完感觉我有点上手了。
博客的部署
之前使用 hexo,在最后使用的时候发现了Travis CI - Test and Deploy with Confidence 持续集成这个好东西,每次在本地写完博客以后 push 到 github 的仓库,然后这个 app 会自动构建博客发布到 github pages。
所以这次也是一样的选择,一个仓库用来放博客本体(顺便当一个备份),使用持续集成发布到 github pages 和自己服务器里。不过这次学到的是 github Actions。因为之前有用过一些自动签到的脚本,所以这个东西也略有了解,差不多就借一个生产环境干一些事情。具体的配置 github 的官方 docs 也写的比较清楚还有中文翻译,上手还看了一篇阮老师的博客GitHub Actions 入门教程。
发布到自己服务器上那块感觉处理的还不是很好,找了好几种方法:ftp 上传、webhook,最后用了执行 git clone 的命令从 github pages 拉仓库。
所以最后的部署的流程就是:
本地 push 到 github 仓库 –> 仓库 Actions 发布到 github pages、服务器拉取 page 仓库。