Hello Octopress

为了给安装遇到问题搜索解决方案的人提供方便,开头先给出我的环境配置:
Win7+MsysGit+RubyInstaller+Devkit+GitHub+Python2.6


说在前面

一直有开技术博客的想法。之前有了好几个博客,分别写不同的内容(譬如诗词、譬如生活的琐碎、譬如在辩论队群博写辩论的话题…有空时在关于页面介绍给大家),技术内容插在哪一个都感觉四不像,别的不说,就博客的风格主题设置就无法定位,还是分开的好。

不过一直没动手,一方面感觉自己弱爆了没东西写,另一方面主要是主流写博方式麻烦,尤其是长日志,博客后台超差的一致性和稳定性,常搞到我很崩溃。已有那几个博客,偶尔心血来潮更新一下,长期丢荒,何必新增一块荒地。

直到遇到 Markdown(以及类似的轻量级标记语言),真的很清爽,让我写日志的量和质都有了大的提升,感觉又有了写的动力。(有关Markdown的介绍,请看这篇日志)接下来,又遇见了基于Markdown的Jekyll,和基于Jekyll的 Octopress,突然发现,这才是程序员应有的写博方式:在本地用简洁的标记(Markdown)把文章写好,然后敲一个命令,什么都搞定了。当然代价就是,前期得折腾一些。然而对于吾等“生命在于折腾”的人,此亦一乐也。

于是,经过两天断断续续折腾,博客算是有了雏形。为此,写下这篇日志,一为留个记录,二为有类似需求的人提供参考。好了,废话够多了,下面正题。

HOW TO

重申我的环境配置: Win7+MsysGit+RubyInstaller+Devkit+GitHub+Python2.6

相关教学已经很多,大部分问题可以直接搜到。也许我比较菜,看了那些教程,中间还是遇到许多阻碍。因为过程很琐碎,而且目标读者是懂很少甚至不懂技术的人(也就是比我这个菜鸟还菜的),所以原理直接跳过,很容易搜到的也跳过,只挑关键的说,只说完安装,后续配置可能另文叙述。为了方便大家,关键命令会贴出,有核对过,应该可以 直接复制粘贴执行。本文没有说到的,请自行搜索,或者…等我写后续的文章——有空的话。

  • git:我选用的是msysGit。这个不是这次一起装的,之前就一直在用,没有出过什么问题,大部分时间在bash下敲,偶尔偷懒会配合TortoiseGit和eclipse上的插件用。没有试过cygwin版,没法比较。因为装完太久,已经想不起可能会出什么问题,应该会装软件就会吧, 默认设置就好了。装完之后找一个文件夹空白的地方右键,菜单里应该会出现一系列git的命令。git的用法技巧不在讨论范围。

  • ruby:这个比较折腾,主要是Windows下没有rvm。我用rubyinstaller装完之后 听说用railsinstaller会更简单,因为里面包含了大部分东西,大家可以搜一下。不过如果你决定折腾,或者已经用了rubyinstaller,继续看下去。

首先包括Octopress官网在内,很多人说 必须1.9.2的。可我装完 1.9.3才留意到,目前为止没出过问题,所以对大家都强调1.9.2很疑惑。保险起见,听大家的吧;不过如果已经装了1.9.3,似乎也不用换。

这个也是一般软件安装的样子。需要强调的是,安装路径 不能有空格和中文,因为某些gem的调用(还是安装,忘了)会出错。装完随便打开一个cmd,敲

1
ruby -v

然后回车,如果看到版本信息说明成功了。接下来要用到gem,因为1.9.2以上版本的ruby默认有gem,所以不用单独安装。不过保险起见,建议执行一次

1
gem update --system #将gem本身升级到最新
  • Devkit:这个必须安装,因为某些gem没有可执行版本供安装,必须获取源码然后本地编译,这是就需要devkit提供编译环境。下载回来一般是个自解压缩包,解压到要安装的地方,然后就可以开始安装了。同样地,路径不能有空格和中文。下面假设路径是d:\devkit
1
2
3
4
cd d:\devkit
ruby dk.rb init #生成config.yml,会检查将要安装DevKit支持的Ruby列表,只支持通过RubyInstaller安装的Ruby,如果列出的Ruby不是安装目标,可以手动修改
ruby dk.rb review #可选操作,检查安装DevKit支持的Ruby列表是否有误
ruby dk.rb install #如果之前安装过但失败,这步会报错说已经安装,要加上 -f参数强制覆盖

如果没有报错信息,一般就成功了,这时可以尝试安装RDiscount(反正后面要装)测试Devkit是否安装成功:

1
gem install rdiscount --platform=ruby
  • Octopress:主角出场。首先是获取代码。最直接当然是git clone到本地。
1
2
# 注意之前安装git时,如果没有把git执行目录加入系统目录,那么所有关于git的操作都必须在git bash进行
git clone git@github.com/imahtics/octopress.git local\path\octopress #把本地目录替换成你想要的位置

考虑到网络环境的差别,譬如校园有时会封掉某些端口导致git clone很慢甚至失败,这时直接去项目主页下载压缩包反而比较快。下面正式开始安装,开始之前我先假设你有一个github账户(注册流程跟普通网站没两样)

1
2
3
4
5
6
7
8
cd octopress #进入Octopress的根目录
gem source --remove http://rubygems.org/ #因为一些你懂的原因,官方服务器偶尔抽风,所以不用
gem source -a http://ruby.taobao.org/ #感谢淘宝的镜像
#安装必要的gem
gem install bundler
gem install rake
bundle install
rake install #一般到这里都会提示rake版本比要求的高,这时只要执行一下bundle update再重新执行就好

写了很长但还没写完,接下来可能有一段时间没空,未完待续…


“知识共享 署名-非商业性使用-禁止演绎 2.5 中国大陆(CC BY-NC-ND 2.5)”许可协议
本作品为本人原创,采用“知识共享 署名-非商业性使用-禁止演绎 2.5 中国大陆(CC BY-NC-ND 2.5)”许可协议进行许可。
本作品允许复制和传播。如需转载,请留言告知,原文转载并在文章开头明显位置加上署名和原链接,不得用于商业用途,不得修改、转换或者以本作品为基础进行创作,谢谢合作。详情请点击查看协议具体内容。


另外,本文使用markdown标记语言以及MEditor编辑。 想了解更多,可以访问markdown语法精简版markdown语法完整版以及下载MEditor软件