Octopress to Hexo

我的博客最开始是基于 Octopress 进行搭建,但是 Octopress 已经很久没有更新了。在我更换了新电脑后,最新的一次我试图在新 MBP 上搭建 Octopress 博客时,一直构建失败,这让我打定主意更换掉它。

调研了一下目前流行的方案后,最终决定迁移到 Hexo,主要的原因是:

  • Hexo 可以生成静态文件,这样很方便地托管到 GitHub 上;
  • Hexo 是基于 Node 的,而 Node 的速度非常快,相信所有的前端同学都不会拒绝 Node :);
  • Hexo 对 Octopress 的迁移很友好,图片引用方式完全一样,原先的文章不需要进行太多的改动。

环境配置

安装

Hexo 的安装非常简单,只需要执行以下一行命令:

1
npm install -g hexo-cli

初始化

接下来,创建一个新的博客

1
2
3
$ hexo init <folder>
$ cd <folder>
$ npm install

1
2
3
4
5
6
7
├── _config.yml
├── package.json
├── scaffolds
├── source
| ├── _drafts
| └── _posts
└── themes

相比 Octopress,Hexo 的目录结构更加简单:

  • _config.yml :配置文件;
  • scaffolds :文章模板;
  • source :博客文章;
  • themes :主题风格文件。

迁移

迁移起来很简单,把以前 Octopress 的 source/_post 目录下的文章,拷贝到 Hexo 的同名目录下即可。
以前的图片目录,也可以直接拷贝到 source/images 目录下(可能需要修改下图片的url)。

主题

博客的主题风格,我参考的是知乎上的这个讨论有哪些好看的 Hexo 主题?
最后选择了hexo-theme-next

常用命令

Create a new post

1
$ hexo new "My New Post"

More info: Writing

Run server

1
$ hexo server

More info: Server

Generate static files

1
$ hexo generate

More info: Generating

Deploy to remote sites

1
2
$ hexo clean
$ hexo deploy

More info: Deployment