因为当前发布版的jekyll 0.11.2在扫描目录时会忽略以.
开头的隐藏文件,即便在_config.yml
中显式include
也不行。git上的最新版已经修复了这个问题,如果不愿意去跟master,可以在本地对其稍微hack一下。
在jekyll的site.rb
中(该文件可能位于~/.rvm/gems/ruby-1.9.3-p125/gems/jekyll-0.11.2/lib/jekyll/site.rb
)中,找到第126行:
entries = Dir.chdir(base) { filter_entries(Dir['*']) }
将其修改为:
entries = Dir.chdir(base) { filter_entries(Dir.entries('.')) }
保存即可。ref
Ruby这个玩意在Windows下简直就是杯具。首先可以去RubyInstaller下载Ruby for Windows的安装包安装。然后既然要用到Git,所以那个msysgit自然也是需要安装的。接着,因为安装某些gem需要编译环境,所以还需要一个MinGW,RubyInstaller提供的Development Kit是一个不错的选择。
以上都安装好了以后,便可以用gem
安装jekyll了。首先打开msys的命令行,去DevKit目录下运行devkitvars.bat
把编译工具添加进系统PATH。可以先gem update --system
一下然后再gem install jekyll
。用来解析Markdown的rdiscount
也可以如此来安装。
以后的工作可以都在Git Bash那个命令行环境下进行。不过这时候在目录里执行jekyll
会报编码错误。我们需要在命令行里vim ~/.bashrc
,然后把下面两行加入配置文件:
export LC_ALL=zh_CN.utf8
export LANG=zh_CN.utf8
保存后可以source ~/.bashrc
,也可以关掉窗口重新打开。这时候再生成页面应该就不会有问题了。
已经预定义了几个rake
指令:
rake
: 启动jekyll服务器并自动监视文件更新rake build
: 构建网站rake deploy
: 部署网站到远程服务器rake all
: 构建并部署
注意:需要在本地创建RSA密钥对并且ssh-copy-id
至服务器后方可免密码部署。