安装Jekyll本地编译环境

#Github

新手入门,网络资料集合整理,备忘!

安装Jekyll主要是为了本地浏览博客更改,不必每次都提交代码再刷新查看。


系统需求

首先确定操作系统环境,不建议在 Windows 上面搞,所以你需要用:

  • Mac OS X
  • 任意 Linux 发行版本(Ubuntu,CentOS, Redhat, ArchLinux …)

强烈新手使用 Ubuntu 省掉不必要的麻烦!


步骤0 - 安装系统需要的包

  # For Mac 
  # 先安装 [Xcode](MAC APP商店搜索下载) 开发工具,它将帮你安装好 Unix 环境需要的开发包。


步骤1 - 安装 RVM

RVM 是干什么的这里就不解释了,后面你将会慢慢搞明白(其实还是不明白,按顺序安装就行了)。

curl -L https://get.rvm.io | bash -s stable

期间可能会问你sudo管理员密码,以及自动通过homebrew安装依赖包,等待一段时间后就可以成功安装好 RVM。

然后,载入 RVM 环境(新开 Termal 就不用这么做了,会自动重新载入的)

source ~/.rvm/scripts/rvm

检查一下是否安装正确

rvm -v

将返回类似结果:

rvm 1.22.17 (stable) by Wayne E. Seguin wayneeseguin@gmail.com, Michal Papis mpapis@gmail.com [https://rvm.io/]


步骤2 - 用 RVM 安装 Ruby 环境

列出已知的ruby版本 rvm list known

可以选择现有的rvm版本来进行安装(下面以rvm 2.0.0版本的安装为例)

rvm install 2.0.0

同样继续等待漫长的下载,编译过程,完成以后,Ruby, Ruby Gems 就安装好了。

(最新软件版本已经更新,可根据终端列表选择最新版安装)

另附:

查询已经安装的ruby rvm list


步骤3 - 设置 Ruby 版本

RVM 装好以后,需要执行下面的命令将指定版本的 Ruby 设置为系统默认版本。

rvm 2.0.0 --default

同样,也可以用其他版本号,前提是你有用 rvm install安装过那个版本。

这个时候你可以测试是否正确ruby -v

将返回类似结果:

ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-darwin13.0.0]

gem -v

将返回类似版本号:2.1.6

Ruby的默认源使用的是cocoapods.org,国内访问这个网址有时候会有问题,网上的一种解决方案是将远替换成淘宝的,替换方式如下:

gem source -r https://rubygems.org/

gem source -a https://ruby.taobao.org

要想验证是否替换成功了,可以执行:

gem sources -l

正常的输出结果:

CURRENT SOURCES           
http://ruby.taobao.org/   

到这里就已经把Ruby环境成功的安装到了Mac OS X上,接下来就可以进行相应的开发使用了。


步骤4 - 安装Jekyll

在终端里输入

gem install jekyll

安装jekyll-paginate,在终端里输入

gem install jekyll-paginate

如遇到以下错误,说明网络不通:

ERROR: While executing gem … (Gem::RemoteFetcher::FetchError) Errno::ECONNRESET: An existing connection was forcibly closed by the remote host.

这时候有三种解决方法:

  1. 等天气好的时候再来
  2. 架梯子
  3. [推荐] 更换为Ruby China源,参看步骤3最后部分。


步骤5 - 开启本地实时预览

上一小节的安装都完成以后,在终端中输入命令

cd {local repository} // {local repository}替换成你的本地仓库的目录如:

cd "/Users/XXX/XXX"

然后运行:jekyll serve

如果一切顺利,将启动成功,通过在浏览器地址栏输入 127.0.0.1:4000http://localhost:4000/ 回车就已经可以看到自己网站的模样啦。

如遇到以下错误,在仓库文件 _config.yml 中加入一句 gems: [jekyll-paginate] 即可。

Deprecation: You appear to have pagination turned on, but you haven’t included the jekyll-paginate gem. Ensure you have gems: [jekyll-paginate] in your configuration file.

只要 jekyll serve 服务开着,本地仓库文件有任何更新,本地网站刷新都能马上看到!

关闭 jekyll serve 命令是在终端中按ctrl+c,终端命令中有提示。