1.在 Github 上建一个名为 xxx.github.io 的库;
2.把看中了的 Jekyll 模板 clone 到本地;
3.把这个模板 push 到自己的库;下面为了从头展示如何用 Git + Github + Jekyll 搭建博客。
一、在 Github 创建名为 username.github.io 的库
按照 Github Pages 上的说明,首先要创建一个新的库,把它命名为 username.github.io。博客搭建成功后,这就是该博客的访问网址。
关于「Initialize this repository with a README」这个选项是在初始化库的时候创建一个关于该库的说明,huangziwei建议不要勾选,自己提交一个,我为了省事勾选了,
如果你没有勾选,可以以后创建
cd 到桌面,然后复制一下你库的地址:
然后clone到桌面
git clone https://github.com/username/username.github.io.git
进入本地库
cd username.github.io.git
输入以下命令创建一个README.md:
echo "# username.github.io" >> README.md
git add README.md
git commit -m "first commit"
git push origin master
gouaili@gouaili-DT MINGW64 /e
$ git clone https://github.com/gouaili/gouaili.github.io.git
Cloning into 'gouaili.github.io'...
warning: You appear to have cloned an empty repository.
二、选择模板
jekyllthemes.org 上有很多Jekyll模板,寻找自己喜欢的。
首先,我们把 这个库 clone 到本地:
$git clone https://github.com/abaojin/abaojin.github.io.git
gouaili@gouaili-DT MINGW64 /e
$ git clone https://github.com/abaojin/abaojin.github.io.git
Cloning into 'abaojin.github.io'...
remote: Counting objects: 447, done.
Receiving objects: 91% (407/447), 268.0remote: Total 447 (delta 0), reused 0 (delta 0), pack-r eused 447
Receiving objects: 100% (447/447), 277.94 KiB | 5.00 KiB/s, done.
Resolving deltas: 100% (261/261), done.
三、把博客托管到 Github Pages
一般而言,克隆了别人的模板,第一件事要做的就是修改 _config.yml 里的个人信息。
只要修改过文件,我们就需要重复 git add 和 git commit 这两步:
$ git add .
$ git commit -m 'modified _config.yml'
git add . 里的一点,指把当前目录所有修改过的文件都加到 Staged Area 去。
前面我们说过 git remote -v。因为我们直接 clone 了别人的库,所以 clone 下来的文件夹里,已经登记了模板作者的远程库信息:
$ git remote -v
origin https://github.com/muan/scribble.git (fetch)
origin https://github.com/muan/scribble.git (push)
我们要把 origin 的地址改成我们之前创建的 username.github.io 库的地址:
gouaili@gouaili-DT MINGW64 /e
$ ls
'$RECYCLE.BIN'/ abaojin.github.io/ itunes/ WorkWiki/
'~$ Microsoft Word 文档.docx' DH-data/ personweb/ zhaop/
360CloudUI/ dw_work_git/ SMS/ 工作文档/
360Downloads/ gouaili.github.io/ SVN_bigdata/ 行政服务/
91UserData/ 'iTools 3'/ 'System Volume Information'/
c
gouaili@gouaili-DT MINGW64 /e
$ cd abaojin.github.io
gouaili@gouaili-DT MINGW64 /e/abaojin.github.io (master)
$ ls
_config.yml _includes/ _posts/ css/ feed.xml js/ media/ README.md
_drafts/ _layouts/ _sass/ favicon.ico index.html LICENSE page/ README-zh-en.md
gouaili@gouaili-DT MINGW64 /e/abaojin.github.io (master)
$ vim _config.yml
gouaili@gouaili-DT MINGW64 /e/abaojin.github.io (master)
$ git add .
gouaili@gouaili-DT MINGW64 /e/abaojin.github.io (master)
$ git commit -m 'modified _config.yml'
[master c568817] modified _config.yml
1 file changed, 4 insertions(+), 4 deletions(-)
gouaili@gouaili-DT MINGW64 /e/abaojin.github.io (master)
$ git remote -v
origin https://github.com/abaojin/abaojin.github.io.git (fetch)
origin https://github.com/abaojin/abaojin.github.io.git (push)
gouaili@gouaili-DT MINGW64 /e/abaojin.github.io (master)
$ git remote set-url origin https://github.com/gouaili/gouaili.github.io.git
gouaili@gouaili-DT MINGW64 /e/abaojin.github.io (master)
$ git remote -v
origin https://github.com/gouaili/gouaili.github.io.git (fetch)
origin https://github.com/gouaili/gouaili.github.io.git (push)
现在已经变成我们自己的了。
最后输入
$ git push -u origin master
如果没有绑定 SSH key,一般会要求输入用户名和密码。输入后则会出现
Counting objects: 268, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (187/187), done.
Writing objects: 100% (268/268), 224.02 KiB | 0 bytes/s, done.
Total 268 (delta 76), reused 268 (delta 76)
To https://github.com/hyaojia/hyaojia.github.io.git
* [new branch] master -> master
gouaili@gouaili-DT MINGW64 /e/abaojin.github.io (master)
$ git push -u origin master
Counting objects: 450, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (184/184), done.
Writing objects: 100% (450/450), 278.47 KiB | 0 bytes/s, done.
Total 450 (delta 263), reused 446 (delta 261)
remote: Resolving deltas: 100% (263/263), done.
To https://github.com/gouaili/gouaili.github.io.git
* [new branch] master -> master
Branch master set up to track remote branch master from origin.
代表成功推送。现在在浏览器输入网址 http://username.github.io,则可以看到博客的样子了。
如果没有修改模板的需求,利用 Git + Github + Jekyll 搭建博客大概就是这样子。写文章,只需要在 _post/ 文件加中,加入带有 YAML 头信息(YAML front matter)
的 markdown 文件,然后 push 到 Github,就会被自动渲染成 HTML。比如,增加一篇名为 My First Post 的博客,在本地创建一个文件名带有日期的 markdown 文
件 2015-04-20-my-first-post.md(里面要写好头信息):
---
layout: post
title: My First Post
---
这是我的第一篇博客
最后按上述方法(git add / git commit / git push)推送到 Github,就大功告成了。