原文链接: http://harttle.com/2013/10/18/github-homepage-tutorial.html
最近终于完成了个人博客的开发和部署,就把整个过程记录在这里。利用 GitHub 提供的文件服务部署,采用 github+GFM+jekyll 方式构建静态博客站点。
之后还可以采用highlight.js进行代码高亮,MathJax提供LaTex公式支持。完成部署后,可以在在线撰写博客,也可以本地离线撰写,然后同步到GitHub。
一些背景
- Git 是一个分布式版本控制/软件配置管理软件,最初用户linux内核开发,至今已广泛用于项目源码管理。
- GitHub 是一个用于使用Git版本控制系统项目的共享虚拟主机服务,提供了无限的存储空间以及网络流量。
- markdown 是一种轻量级标记语言,可用少量的编辑工作生成美观的 HTML 文件。已经成为 GitHub 托管的项目中默认的文档格式,当然 GitHub 也扩展了该语言(GFM)并提供渲染支持。
- Jekyll 是基于 Ruby 的 package,用于编译生成静态站点。GitHub 提供了静态站点支持,并采用 Jekyll 作为其编译引擎。于是,在 GitHub 提交文件后,在10分钟内 GitHub 将编译生成静态站点并开始提供服务。
- highlight.js 是用于web页面的代码高亮,在程序员的博客中想必是不可或缺的。这个开源项目在托管在github的,开发很活跃,因此我放弃了使用Google的prettify,并且加入到highlight.js的开发项目中,为我的vimrc加入了高亮规则。
- MathJax 用于将latex公式转换为html、矢量图的js框架。不必说,理工背景的一定会用得到。能转换为html实在是太NB了!与图片不同,可以实现与上下文的完美拼接。
环境配置
准备工作
- GitHub 账号
- Linux 操作系统(在windows也可完成,但为了方便强烈推荐采用Linux系统):Ubuntu、OpenSuse、CentOS、Arch…均可。
应用程序安装
Ruby
- 如果已经安装过ruby,请确认版本为 1.9.3 或 2.0.0(通过运行
ruby --version
得到ruby版本) 否则,安装Ruby
#ubuntu sudo apt-get install ruby #centos yum install ruby #arch yaourt -S ruby
- 如果已经安装过ruby,请确认版本为 1.9.3 或 2.0.0(通过运行
Jekyll
安装 Jekyllgem install jekyll
建立站点
创建 GitHub 仓库
- 运行
ssh-keygen -t rsa
得到 SSH 公钥文件:id_rsa.pub - 登录 GitHub,添加你的 SSH key(account settings -> SSH Keys -> Add SSH Key)
- 在 GitHub,创建名为 username.github.io 的仓库(其中username为你的用户名),并拷贝其URL(类似:git@gi