引言
终于还是受不了 Octopress 了,准备迁移到 Hugo,受不了 Octopress 是因为:
- markdown code 语法支持不好,很多时候莫名其妙的 Build 失败,让人抓狂。(最主要原因)
- 生成速度太慢,目前生成一次要2分多钟了
- Octopress 项目已经没人维护了
安装 Hugo
如果是 Mac 的话直接:
|
|
然后就可以用下面命令生成文章了:
|
|
开启服务
|
|
然后访问 http://localhost:1313/ 就可以看到你的 Hugo 博客了。
迁移文章
官方有迁移指南,Octopress 迁移到 Hugo 官方推荐使用 octohug,但是我使用下来发现不好用,迁移完之后有小问题。于是我找了一篇文章,结合文章给的代码,自己完善了功能,终于达到我要的效果,参考代码如下:
|
|
使用方式
在 Octopress 博客根目录下新建一个 main.go
文件,然后把上面代码拷贝进去,然后执行下面代码完成迁移:
|
|
最后
这篇文章主要是分享 Octopress 迁移 Hugo 文章的经验,上面的迁移代码不复杂,有一点点 Golang 经验应该是看得懂的,你可以根据自己的需求修改代码。
使用感受对比
博客源码结构
Hugo 的目录结构要比 Octopress 简单的多。主题有一个专门的文件夹存放,这样使得博客源码显得干净整洁。
CI 时间
同样都配置了 CI ,使用 Travis-CI 自动生成静态文件,自动更新博客。但是身为 Golang 开发的 Hugo,明显要比基于 Ruby 开发的 Octopress 要快的多,之前要2分多钟,现在只要1分钟左右就可以了。
功能
Octopress 我已经很久没完了,但是最近我自己写了一个 Hugo 主题,明显感觉到 Hugo 要比 Octopress 功能多。官方也有一个基础的 templates
总结
这次迁移总的来说 Hugo 各方面基本上都完胜 Octopress,就着这次迁移博客的时候顺便做了以下几件事情:
- 把所有 URL 都转为小写了(虽然以前的部分 URL 可能会收到影响)
- 放弃通过分类来管理文章,只使用标签来管理(虽然一篇文章分类也允许有多个)。
- 自己写了一个 Hugo 主题,通过写这个主题实现了几个自己一直想要的功能:
- 优化了 SEO,现在分享我的文章到 Twitter 上会显示卡片模式链接
- 文章详情会自动列出相关文章(Hugo 自带这个功能,太棒了)
- 通过给文章打特定的标签,实现热门文章列表
参考链接
- 原文作者: forecho
- 原文链接: https://blog.forecho.com/octopress-migrate-to-hugo.html
- 版权声明:本作品采用 署名-非商业性使用 4.0 国际 (CC BY-NC 4.0)进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。