教程:一步步在github上建立octopress博客
目标
创建网址为http://itmonkeylife.github.io/Blog的博客.博客使用octopress程序,搭建在github的服务器上.网页与本地机器的Blog
文件夹同步.
步骤
0) 配置环境
octopress需要ruby和git支持. 因此我们需要先安装这两个程序. 这儿分windows和Mac分别讲下.
Windows(简略说下,详细教程请搜索):
下载并安装git:
下载并安装Ruby和开发组件(DEVELOPMENT KIT),共两个文件,Ruby推荐1.9.3版,对octopuses支持很好:
Mac:
Mac本身自带了git,因此不需要单独安装.
Octopress需要带openssl组件的ruby支持.
但新版本的ruby似乎编译对参数--with-openssl-dir=my/openssl/dir
支持有问题, 因此推荐使用rvm安装管理多版本的Ruby, rvm默认安装Ruby 2.0版本, 这儿为了不发生兼容性问题, 除了默认的2.0, 再安装个带openssl的1.9.3版.
确认Xcode和其自带的
命令行工具
已经安装.如没有,Xcode可在App Store免费下载.
命令行工具
可以在Xcode- Preferences - Download
中 点击安装Command Line Tools
.安装rvm, rvm是个软件管理工具,和Linux上的apt-get,yum之类类似.
sudo curl -L https://get.rvm.io | bash -s stable
在~/.bash_profile文件末尾添加:
echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
加载下配置文件:
source ~/.bash_profile
- 安装1.93版支持openssl的Ruby.
rvm install 1.9.3 --with-gcc=clang ----with-openssl-dir=$HOME/.rvm/usr
rvm use 1.9.3 --default
1) 下载octopress至本地Blog文件夹
octopress的源代码同样在github上管理,因此我们使用git克隆一份到本地的Blog
文件夹,并进入此文件夹.
如你没有域名,可以使用github提供的默认域名:yourname.github.com
,yourname是你github的用户名.
git clone git@github.com:ITMonkeyLife/Blog.git ITMonkeyLife/Blog
cd ITMonkeyLife/Blog
2) 安装相关组件
gem install bundler
bundle install
3) 安装主题
rake install
上条命令安装默认主题,在https://github.com/imathis/octopress/wiki/3rd-Party-Octopress-Themes可以找到许多第三方主题,这儿我们选择slash主题,如询问是否覆盖,选择是:
git clone git://github.com/tommy351/Octopress-Theme-Slash.git .themes/slash
rake install['slash']
4) 在github上创建repository
去Github上注册个账户,选择免费套餐.
新建一个repository.
注意:repository的名字一定要yourname.github.com
这样的格式.
yourname
是你注册时的用户名.
这儿我创建名为itmonkeylife.github.com
的repository,创建好后拷贝ssh地址.
https://github.com/itmonkeylife/Blog.github.com.git
5) 建立本地与github的联系
rake setup_github_pages
输入上述ssh地址,注意区分大小写. 如遇验证问题,提示类似
rake aborted!
undefined method
[]' for nil:NilClass
Tasks: TOP => setup_github_pages
(See full trace by running task with --trace)
的信息,请看此文:github设置ssh验证
6) 绑定域名
首先把你的域名指向207.97.227.245
,如不知怎么操作,请咨询域名注册商.
在source文件夹下建立CNAME文件:
echo 'never.doubting.me' >> source/CNAME
7) 生成网页并推送到github
rake generate
rake deploy
稍等几分钟,你就可通过域名访问博客了.并且收到一封博客建立的信件.
8) 自定义博客
博客的基本信息在_config.yml
文件中修改.
自定义css等在source
文件夹中.
修改后别忘了:
rake generate
rake deploy
9) 发表文章
rake new_post["教程:一步步在github上建立octopress博客"]
这儿我新建了一篇名为教程:一步步在github上建立octopress博客
的文章.
之后去source/_post/
文件夹找到对应.markdown
文件修改.
打开文件后可以看到文件头包含一些文章的信息,这儿我修改为:
---
layout: post
title: "教程:一步步在github上建立octopress博客"
date: 2014-03-13 11:13
author: znithy
comments: true
categories:
- 教程
- github
- octopress
published: false
---
第一张指明此篇是post
,后面是标题,时间和作者,我加了教程
github
octopuses
三个标签,并且允许评论,published: false
表示不要发表,如想要发表改成published: true
或者直接删掉这行.
文章直接写在这部分内容下面.
10) 发表外链文章
点击标题转向其他网页.创建方法同上,只是需要添加external-url
这个条目.
下面是一个例子:
---
layout: post
title: "非常不错的科学博客"
date: 2014-03-13 14:13
comments: true
external-url: http://www.baidu.com/
---
11) 发表页面
创建网址为http://itmonkeylife.github.io/Blog//about/i.html
的网页:
rake new_page[about/i.html]
与post
不同的是,此时没有categories
这个条目,但多了sharing
和footer
,具体有什么作用,不妨自己试下.
---
layout: page
title: "Super Awesome"
date: 2011-07-03 5:59
comments: true
sharing: true
footer: true
---
12) 管理文章
直接增加或删除.markdown文件即可. 每次更新文件后别忘了:
rake generate
rake deploy
其他
git设置用户名
默认情况下直接使用系统的用户名,也可通过下面的命令自定义:
git config --global user.name author #将用户名设为author
git config --global user.email author@mail.com #将用户邮箱设为author@mail.com
关于怎样使用git,这份教程很不错,推荐.
第三方插件地址:
中文问题:
如遇到此类提示(可能因设置了中文的catagory):
...
Liquid Exception: invalid byte sequence in UTF-8 in atom.xml
/Documents/never.doubting.me/plugins/octopress_filters.rb:75:in `gsub;
/Documents/never.doubting.me/plugins/octopress_filters.rb:75:in `cdata_escape;
...
最方便的方法是换用kramdown.首先安装kramdown:
gem install kramdown
之后修改_config.yml
文件:
markdown: kramdown