龙珠

修炼自己与发现世界

搭建Github博客

Github提供了Github Pages功能,可以支持Jekyll静态网页博客,可以在上面搭建博客。

主要参考了使用Github Pages建独立博客搭建一个免费的,无限流量的Blog----github Pages和Jekyll入门这两篇文章,以及官网Github Pages帮助文档Github Pages Help

1. Github Pages的博客推荐建立在gh-pages分支上(还没有试过master分支是否可以)。建立该分支有两种方法:

a. 在Github上新建repo,如blog。之后选择页面右侧的"Settings"选项,选择”Github Pages“中”Automatic Page Generator“,之后会让选择一个模板,确认即可。这样可以自动建立一个gh-pages分支。

b. 如参考文章2中,在本地文件夹init之后,使用命令:$ git checkout --orphan gh-pages,强制建立gh-pages分支。这样可以省去上面的步骤。

2. Github支持的Jekyll基本结构如参考1中所说:

|-- _config.yml
|-- _includes
|-- _layouts
|   |-- default.html
|   `-- post.html
|-- _posts
|   |-- 2007-10-29-why-every-programmer-should-play-nethack.textile
|   `-- 2009-04-26-barcamp-boston-4-roundup.textile
|-- _site
`-- index.html

简化的话,只需要按照参考文章2中所述添加文件即可。包括:_config.yml index.html _layouts _posts及后二者文件夹内的文件。

基本流程就是这样,可以按照参考文章中来做。不过过程中,因为不熟悉导致很多问题,现记录如下:

1.是否一定需要建立在名为username.github.io的repo上?

我建立了这个repo,但最后博客可以搭建在其他工程,如blogname上,这样最后地址是username.github.io/blogname,所有文档也是存在blogname的repo下。至于username.github.io这个并没有用到。至于是否必须建立该repo,嗯,官网要求建立。还需要换个账号看看不建立该repo是否可以。

2.设置origin的url

教程中的代码:

git remote add origin https://github.com/arthur503/arthur503.github.com.git
git push -u origin master

其中origin是自己定义的项目名。第一次的时候使用remote add添加,若需要修改,使用:

git remote set-url origin git@github.com:ACCOUNT/REPO.git

可以重新设置origin对应的git地址。

3._yml语言特性

在参数名和参数之间的冒号后面有空格!否则会报错。

是“参数“+”:“+" "(空格不能省!而且不能用TAB)+”blurblur“,所以标准版是:

title:    Ouscn

4._posts文件夹下保存html需要是“UTF-8 无BOM格式编码”。

5.出现“Page build failure"的原因有哪些?

1.编码错误。如问题4.

2.某个文件新建、复制、删除后还原等原因,都可能改变编码,一定要把所有相关的都查一下。

3.纯html文件的话,必须是完整的文件,不能只是”CONTENT"!

4.文件名必须是以“-”间隔,不能空格(猜测按照“-”来split字符串),不能包含中文,否则出错。文件名可以包含大写字母。

5.jekyll中的yml语言错误,如问题3中描述。对于title,标头必须定义后再使用;标头和冒号后,参数前一定有空格!

 

参考资料:

  1. 使用Github Pages建独立博客

  2. 搭建一个免费的,无限流量的Blog----github Pages和Jekyll入门

  3. 帮助文档Github Pages Help