为什么要折腾
折腾了几次终于把博客从 wordpress 搬到 Github 了,迁徙这事本来是够麻烦的,而且也比较无聊。不过最终还是抑制不住诱惑,这有下面几点点好处。
编辑方便,专注写作
在线下编辑,可以随便选择自己喜欢的编辑器。当然 wordpress 也有离线编辑工具,不过 Linux 下我还没找到合适的,
我平常是用Muse生成 html,然后再粘贴到站上。其实还好,
就是插入图片不方便。使用 Github 和 Jekyll 是完全的离线,你甚至都不需要离开终端就可以发布文章,一切都只是简单的 git push 而已。
写的过程中还可以用 jekyll –server 预览最终排版。可以使用 Github 进行版本管理
像写程序一样写日志,这对程序员吸引很大。
我用这个小脚本来完成发布:
#!/bin/sh
do_commit() {
cmd="git commit -a -m\"$log\""
echo $cmd
git add .;
git commit -a -m"$log"
git push;
}
while [ $# -gt 0 ]
do
case $1 in
-commit |-u) shift; log=$1; do_commit; exit 0;;
esac
shift
done
- 简洁
我喜欢这套是因为感觉一切都很简单,在_post 目录下写 markdown 格式的文章,生成网页、push 上去就发布了。页面也非常整洁,这对于一个以文字和代码为主要内容的站点来说最合适不过了。而且因为生成的全是静态网页,所以打开的速度也非常快。
折腾过程
这套工具适合程序员,因为一切都可以在本机上操作,你可以自己写程序来批量处理文档。我是自己写了一点 Python 小程序转移图片。迁徙的过程中也会碰上一些问题,不过如果你懂一点 Ruby,这些都还是比较好解决的。基本步骤为:
申请 GitHub,这个不少程序员有,直接跳过。
安装 Jekyll 在本地,可能会遇上 ruby 版本的问题,我的机子上是 1.8.7,需要 1.9.2,使用rvm来解决,具体参考这里。具体使用下面一些命令:
sudo apt-get install gems curl
gem install rvm
rvm get latest
rvm reload
rvm install 1.9.2
rvm use 1.9.2
ruby -v #(use 1.9.2)
gem install directory_watcher liquid open4 maruku classifier jekyll
再建立 yourname.github.com 项目,git clone jekyll bootstrap到自己的代码库。
从 wordpress 迁徙,我使用 wordpress.xml 这个方法,最后修改域名解析就大功告成了。
修改域名的时候在 Git 上建立 CNAME 为 demo.com,在 DNS 处设置 demo.com 的 A 记录到 Github 的地址 (207.97.227.245),同时为了使得 www.demo.com 也指向 GitHub,设定
www 的 A 记录到这个地址。这是我设置的时候出错了的地方。整个流程非常简单,你甚至可以在三分钟内完成 Github 的博客搭建,更相详细可以参考这里这里。