博客迁移到 Hugo
@ · Sunday, Jun 14, 2015 · 3 minute read · Update at Jun 14, 2015

我的博客大概经历了几个纪元

孵化纪元

上大学时做的个人主页,算是博客的孵化形态,也确实是孵化形态,那页面、那效果,真是酸爽

公共纪元

刷起了「博客」风,网站无论大小,没有个「博客」版块都不好意思称为网站。

新浪、搜狐、百度空间、博客园这些是活过这个纪元的

  1. 在博客园上写
  2. 不知道啥原因换到搜狐博客
  3. 百度搜索结果中百度空间中的内容排位靠前,于是换到百度空间

WP 纪元

开始玩域名、买主机,手痒痒搭了个 Wordpress ,博客就顺理成章换成 Wordpress。

Hexo 纪元

很久就开始 docbook 写一些东西,后来也短暂用过 reStructuredText,Wordpress 中没有特别方便插件

Markdown 流行的时候已经匆匆数年过去了

这时 Wordpress 中已经有一些 Markdown 插件,前面曾经写过一篇博客介绍,这次迁移博客的时候那篇直接就砍了

Octopress、Ghost、Jekyll、Marboo、Hexo … 静态博客类爆发了

经过比较,最终还是选择了 Hexo,有一个主要的原因是 Hexo 有插件能很方便地把原有 Wordpress 博客导出成 Markdown 格式。另外,Hexo 的部署插件也很方便,能一条命令就发到 pages (github pages, gitcafe-pages) 上。

既然 Wordpress 都不需要了,主机也就停用了(其实是偷偷地换成了翻墙专用服务器,我会到处乱说吗)

开个分支聊一下主机先

主机借放

由于导师的介绍,帮某机关从域名服务器网站制作维护一条龙服务,跟对方唯一所求的就是当时 Wordpress 博客借放服务器上。

VPS

维护的主机一直是 CentOS 4 几年没升级(正室网站后来基本上没有加过新功能,也确实没有升级的需求),但是 CentOS 4 当时已经不能满足 Wordpress 最新版本的需求了。于是手痒买了一台 VPS,价格倒是不贵。

git pages 服务

github pages 出来后很方便,当时曾经考虑过,不过很快因为某些原因被墙也就罢了。

后来 gitcafe 提供 pages 服务好久了,因为换到 Hexo,加上那台 VPS 网速常常不理想,索性停了切换到 gitcafe pages 服务上

分支结束,切回主分支

Hugo 纪元

Hugo 名称跟 Hexo 名称还挺像,难道因为 go 写的就叫 Hugo

也正因为 go 写的,可以跨平台运行,安装也是二进制文件很简洁。Hexo 的安装就显得繁琐得多。

Mac 重装了之后,再装 Hexo 已经升级到 3.x,npm 强制安装 2.8.3 版本后运行总是出错,也不知道是什么鬼。 早上醒了一咬牙趁出门前把博客给转到 Hugo

花了点功夫研究一番,性能相当不错(也不看看啥语言写的),选了一个叫 Aglaus 的简洁皮肤。

皮肤

Hexo 毕竟时间久,在中文圈也非常流行,中文皮肤及适应墙内(多说、国内静态CDN)皮肤也众多。

Hugo 目前国人制作的皮肤只有一两款。计划回头有空也制作一款功能比较完备的皮肤。

部署

Hugo 没有 git 发布插件了,网上找了一篇 git subtree 直接 push 到 git pages 服务里方法,也方便得紧哪。

$ git remote add -f himysql git@himysql.com:user/repo.git
$ git subtree add -P public himysql gitcafe-pages [--squash]
$ hugo new post/xxx.md
$ hugo -t aglaus
$ git add .
$ git commit -m 'write a new blog'
$ git subtree push -P public himysql gitcafe-pages
$ git push origin master

Social Links