使用GitHub Pages建立个人博客

来源:互联网 发布:电影后期合成软件 编辑:程序博客网 时间:2024/06/04 19:14

GitHub Pages 建立个人博客

GitHub Pages

  Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。GitHub是一个可以免费托管各种git库的站点,被称作程序猿们的FACEBOOK。

  GitHub Pages是github提供的一个工具,可以让用户免费的托管静态站点。每个GitHub用户可以建立一个与项目独立的个人站点,也可以为每个项目建立自己的静态站点。

  GitHub Pages默认使用jekyll工具生成静态站点内容。jekyll是一个站点生成引擎,简单来说,用户可以通过在jekyll规定的目录下,按照jekyll的规定格式建立一些模板、文件和配置,就可以使用jekyll生成想要的站点,并且这个步骤完全可以用拷贝别人的模板目录来完成。站点建立起来之后,用户的工作非常简单,只需要在发布目录下建立要发布的博文文件,可以是HTML或者Markdown等支持的格式,jekyll便可以根据文件生成需要的网页,发布出去。

  Github Pages的优点:
+ 使用Jekyll模板系统,配置简单,站点建立起来之后,发布工作非常轻松。
+ 可以使用标记语言,例如Markdown。
+ 免费托管,使用git同步。根据Github的限制,每个站有300MB空间。
+ 可以绑定自己的域名,非常适合建立个人博客。
+ 可以使用一些扩展插件和服务,比如评论disqus,跟踪google analyze等。

  Github Pages的缺点:

  • 由于使用Jekyll,因此定位于静态页发布,适合博客,项目介绍等页面。动态功能有限。
  • 使用Git,需要一些基础知识,需要动手。但这也起到了筛选使用Github Pages的人群的作用。

  总的来说,GitHub Pages适合具有动手能力,对于动态功能需求不多,只是想简单清晰的表达个人心得和记录的人建立个人博客。

  为什么使用GitHub Pages建立个人博客?参见

  • 理想的写作环境:Git+Github+Markdown+Jekyll
  • Blogging Like a Hacker

windows下本地环境搭建

  本地必须的工具是Git(显而易见,你需要使用GitHub)。如果你需要在本地查看生成的静态站点,进行调试,那么你还需要安装ruby和jekyll。本人使用的是windows搭建的环境,因此这里主要介绍windows下面的环境搭建。

请根据需求选择:

安装Git,不用本地调试

  在本地使用Git,需要安装Git客户端。可以安装GitHub官方客户端,包括linux、windows、mac平台,这里不做介绍,请参考 GitHub安装设置 。

  在windows下,用户还可以安装 msysgit 来使用Git 。安装之后需要进行配置,使你的GitHub识别你的客户端。Windows下面的配置,请参照《使用GitHub Pages建立独立博客 》。

  你也可以使用本地调试环境搭建教程中的railsinstaller来安装git,安装完毕会自动提示你设置github,更加简单方便。

本地调试环境搭建

  • 安装ruby环境。

  在windows下,推荐使用RailsInstaller来安装全套环境,可以省却不少麻烦。这里面里面包含了Ruby、Rails、Bundler、Git、Sqlite、TinyTDS、SQL Server support和DevKit。

  安装完毕之后,会提示用户配置GitHub环境,填写GitHub注册时的用户名和邮箱,就完成了公钥和私钥的生成。一半情况下,在C:\Documents and Settings\用户名下,有个隐藏目录名为.ssh,id_rsa.pub文件就是公钥,id_rsa就是私钥。

之后在GitHub网站,点击你的用户名,找到“Account Settings” > “SSH Keys” > “Add SSH key” ,复制你的公钥到这里保存,之后就可以使用本地的Git客户端来访问你的目录。

  • 安装jekyll

    • 由于你懂的原因,修改gem的源,把淘宝的镜像加到gem的镜像列表里
    1. # 查看自己的源,找到类似下面的https://rubygems.org/
    2. gem sources -l
    3. # 删除该源
    4. gem sources --remove https://rubygems.org/
    5. # 添加淘宝的源
    6. gem sources -a http://ruby.taobao.org/
  • 安装jekyll

    1. gem install jekyll
    2. # 如果提示类似于TIMEOUT之类的,可能是你需要安装(本人遇到了)
    3. # gem install httparty
  • 顺道安装一些插件

    1. gem install ridscount kramdown redcarpet rouge

  至此,本地环境安装完毕。后面会有jekyll的启动和使用方法介绍。

建立GitHub Pages上的站点目录

  在你的GitHub上面创建名为USERNAME.github.com.git的项目目录(USERNAME是你的用户名)。该目录是存放你的jekyll模板文件的路径,可以当作个人博客的后台代码项目。

  PS : 由于后面使用jekyllbootstrap,目录可以留空,直接复制现有模板到这里。至于直接使用jekyll创建的过程,参考使用GitHub Pages建立独立站点 。

使用Jekyll Bootstrap来建立个人博客

  Jekyll Bootstrap是一个开源项目,提供了一套实用Jekyll的模板站点。好处如下:
- 可以使用户通过简单的项目拷贝就可以设置好全套环境。
- 可以方便快捷的更换主题,并且提供几套现有主题供用户使用。
- 提供增强模板功能(如果你会使用的话)。
- 集成评论和跟踪插件的支持,可以通过简单设置账号的方式来使用相关服务。
- 屏蔽底层的一些细节。方便基础用户。

  具体使用请参考bootstrap官网,这里把主要过程翻译了一下:

1. 拷贝模板项目到你的站点目录

  1. git clone https://github.com/plusjade/jekyll-bootstrap.git USERNAME.github.com
  2. cd USERNAME.github.com
  3. git remote set-url origin git@github.com:USERNAME/USERNAME.github.io
  4. git push origin master

  之后你的项目目录下应该有完整的bootstrap代码。现在可以访问USERNAME.github.io来查看现在的模板网站,里面给出了一些指引。

2. 本地调试(可跳过)

  如果你安装了Jekyll在你的本机,那么你可以进入项目目录,运行下面的命
令,来启动jekyll:

  1. jekyll serve

  之后你会得到提示,你的本地地址为http://localhost:4000,可以访问这个地址,做本地调试。

3. 创建博文

  你可以在_posts目录下面创建博文,模板格式如下:

  1. # 请注意,真实文件不包含'#'开头的注释
  2. # 文件头
  3. ---
  4. # 模板布局,在_layout文件夹下面会有post开头的模板,一般无需更改
  5. layout: post
  6. # 文章标题
  7. title: "Hello World!"
  8. # 文章副标题
  9. tagline: TIME & LIFE
  10. # 文章的注释
  11. description: "My first blog!"
  12. # 文章的分类,可以使用
  13. # categorys: [a, b, c]
  14. # 来指定多个分类,但每个分类必须之前在某些文章中被category定义为单个分类,否则不会生效
  15. category: test
  16. # 标签,同上,可以为单个或者多个
  17. tags: [T1, T2]
  18. ---
  19. # 模板头,引入bootstrap模板的全局变量,不要改动
  20. {% include JB/setup %}
  21. # 以下是你填写的具体内容,如果是markdown则是正文,如果是HTML,则是代码片段
  22. Hello World!
  • 其中两个---之间的是文件头,标记了这篇博文的一些属性。属性的含义如注释(注意真实文件中没有#开头的注释)。
  • 文件名必须是year-month-day-文件名.扩展名的格式,其中扩展名可以为md或者html,也可以为自定义的文档类型。

你也可以方便的使用工具来创建博文:

  1. rake post title="Hello World"
  • 格式如上
  • 日期默认是当天日期

4. 创建新页面(可以调过)

  你也可以创建一个新的页面,但一般情况下,不会需要去创建新页面,只需要创建新的文章就好。

  • 可以通过rake工具来简单的创建页面:

    1. $ rake page name="about.md"
  • 可以再某个目录下面创建页面

    1. $ rake page name="pages/about.md"
  • 可以在某个目录下创建名为index.html的页面

    1. $ rake page name="pages/about"
    2. # this will create the file: ./pages/about/index.html

  创建出来的文件,都具有文件头和默认的模板加载文件,你只需要添加感兴趣的内容就好。之后便可以在你的文章或者其他页面中使用这个链接。

5. 测试完成之后发布

  将你添加的内容发布到项目目录下去:

  1. git add .
  2. git commit -m "Add new content"
  3. git push origin master

  之后jekyll更新整个站点之后,你就可以看到新生成的站点了。

遇到的问题

  • 使用过程中发现markdown渲染不支持```这样的代码块,因此可以再_config.yml中加入下面的内容来更改高亮和markdown引擎。

    1. markdown: redcarpet
    2. highlighter: rouge
  • 如果本地调试遇到Cannot load such file yajl/2.1/yajl之类的错误,应该是本地ruby版本太高,可以安装低版本的ruby。但也可以通过上面更换highlighter: rouge的方式来避免。

  • 如果遇到The file _posts/2014-08-01-blah.md contains syntax errors.之类的错误,在提交之前在_config.yml中设置highlighter: pygments.

结束

  想深入学习jekyll的话,请参考下面的jekyll官网,包括全部jekyll的使用和设置方法,非常实用。

参考文章

  • 使用Github Pages建独立博客
  • Github pages极简教程
  • JekyllBootstrap官网
  • GitHub Pages
  • jekyll官网
0 0
原创粉丝点击