在github上搭建博客(使用Jekyll)
简单说,只需要三步,就可以在 Github 搭建起一个博客:
- 在 Github 上建一个名为 xxx.github.io 的库;
- 把看中了的 Jekyll 模板 clone 到本地;
- 把这个模板 push 到自己的库;
下面为了从头展示如何用 Git + Github + Jekyll 搭建博客。
一、在 Github 创建名为 username.github.io 的库
按照 Github Pages 上的说明,首先要创建一个新的库,把它命名为 username.github.io。博客搭建成功后,这就是该博客的访问网址。
库名的第一部分需要与用户名一致才能生效。所以如果你的用户名是 MichaelMaoMao,库的名字就是MichaelMaoMao.github.io。
关于「Initialize this repository with a README」这个选项是在初始化库的时候创建一个关于该库的说明,huangziwei建议不要勾选,自己提交一个,我为了省事勾选了,
如果你没有勾选,可以以后创建
第一步完成,创建好了库,但是里面空空的,没什么东西,下面就要用到git工具向仓库存放主页和其他文件啦。
如果对git不熟悉的童鞋,可以参考 git教程,也可以在终端中输入 git help 命令来查看所有的命令。
如果你之前没有勾选README,现在可以打开终端,
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
二、选择模板
jekyllthemes.org 上有很多Jekyll模板,寻找自己喜欢的。我用的模板是 Skinny Bones, 这部分huangziwei讲的很清楚,我就直接用他的解释吧(他创建的库名是hyaojia
):
首先,我们把 Scribble 这个库 clone 到本地:
$ git clone https://github.com/hyaojia/scribble.git
把名为 scribble 的文件夹改名为 hyaojia.github.io (不必要,理由跟之前一样,只是为了比较好找),只需要下面这行命令(mv
是移动文件夹的命令,可是也能用来重命名文件。
我明白,一开始这很难理解):
$ mv scribble hyaojia.github.io
然后我们可以进入现在叫 hyaojia.github.io
的文件夹里:
$ cd hyaojia.github.io
三、把博客托管到 Github Pages
一般而言,克隆了别人的模板,第一件事要做的就是修改 _config.yml 里的个人信息。在 scribble 这个模板中,修改的地方不多,只需要把导航栏相关的连接修改成自己的就可以了,
比如 Blog 的 url 改成 http://hyaojia.github.io,邮件和 Github 帐号改成自己的帐号。
只要修改过文件,我们就需要重复 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 库的地址:
$ git remote set-url origin https://github.com/username/username.github.io.git
$ git remote -v
origin https://github.com/username/username.github.io.git (fetch)
origin https://github.com/username/username.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
代表成功推送。现在在浏览器输入网址 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,就大功告成了。
四、添加评论
一个博客少不了交流,如果你想让别人评论,可以选择将评论托管给Disqus。
4.1 访问Disqus注册帐号,并验证邮箱;
4.2 登录后点击Add Disqus To Site ,
填写所连接博客的名字,选择一个disqus的url (最好和你的用户名一致,方便查看):
4.3 然后在你本地github.io文件里修改_config.yml配置文件,在disqus_shortname:后面添加你的disqus名称:
4.4 最后修改好之后,add, commit, push到github, 过一会刷新一下就可以看到下面的评论区了。enjoy, ;)
附上我刚建好的小站, 欢迎留言: http://michaelmaomao.github.io
参考链接:
在github上搭建博客(使用Jekyll)的更多相关文章
- 利用Octopress在Github上搭建博客及后续问题总汇
首先贴一下我的新博客地址: http://findingsea.github.io 用Octopress在GitHub上搭建博客已经不是什么新鲜事了,网上的教程也多了去了,大题的方法什么都差不多,这篇 ...
- 基于Hexo且在GitHub上搭建博客
title: 基于Hexo且在GitHub上搭建博客 Welcome to Fofade's Blog! 搭建初衷 大大小小,大学两年,玩了很多,也学了很多. 回首望之,曾经不知道的,现在是知道了,但 ...
- 在github上搭建博客的问题
最近想到要建立一个自己的博客,以便记录自己在学习中遇到的问题.发现github免费提供空间,正好可以利用它来搭建自己的博客.毕竟github pages免费空间,不限制流量,每次的博客改动和博客模板的 ...
- 在Github上搭建博客
貌似还是这个链接最靠谱呀 http://my.oschina.net/nark/blog/116299 如何利用github建立个人博客:之一 在线编辑器http://markable.in/ed ...
- 使用Jekyll在Github上搭建博客
最近在玩github,突然发现很多说明网站或者一些介绍页面全部在一个域名是*****.github.io上. 好奇!!!真的好奇!!!怎么弄的?我也要一个~~~ 于是去网站上查询了一下,找到了http ...
- 用Jekyll在github上写博客——《搭建一个免费的,无限流量的Blog》的注脚
本来打算买域名,买空间,用wordpress写博客的.后来问了一个师兄,他说他是用github的空间,用Jekyll写博客,说很多人都这么做.于是我就研究了一下. 比较有价值的文章有这么几篇: htt ...
- 用Jekyll在github上写博客
用Jekyll在github上写博客——<搭建一个免费的,无限流量的Blog>的注脚 本来打算买域名,买空间,用wordpress写博客的.后来问了一个师兄,他说他是用github的空间, ...
- 利用github page搭建博客
为什么选择GitHub Pages? 很多人用 wordpress,你为什么要用 github pages 来搭建? 1.github pages有300M免费空间,资料自己管理,保存可靠: 2.学着 ...
- 可能是最详细的 Hexo + GitHub Pages 搭建博客的教程
前言:博主目前大三,Web 前端爱好者.写博客的好处,不是为了写而写,而是一个记录思想的过程.不要考虑它能带给你什么,而是你自己从中收获了什么. 最近刚好有空,于是就参照网上的各种教程,搭建了一个博客 ...
随机推荐
- java JdbcTemplate源码
package com.wl.filter; package org.javaresearch.jerch; import java.lang.reflect.Method; import java. ...
- 我记录综合系统学习研究之用户管理五(如何利用wojilu打造一个全新的SNS应用)
wojilu框架特别适合快速开发多用户分享内容应用,比如知乎,digg这类应用. 对于博客等用户程序,要有4个入口:1)用户展示入口(展示自己的应用) 2)用户后台管理入口(管理自己的应用) 3)聚合 ...
- SRM 447(1-250pt, 1-500pt)
DIV1 250 水题...略. DIV1 500 抽象题意:有一个图,指定其中亮点p1和p2,删掉途中其他的一些点,使得p1和p2最短路大于3. 解法:使得p1和p2最短路为2的点一定要删掉.然后, ...
- kvm 对虚拟机里面插u盘
KVM虚拟机上关于宿主机的USB设备使用问题探究 KVM usb passthrough就是将宿主机的usb接口直接给虚拟机使用,usb接口上的设备也就直接可以在虚拟机上使用: 测试通过usb pas ...
- springMVC源码浅析
因故,需要学习springmvc,现在demo已经跑起来.列文分析springmvc并简单对比struts2. springmvc的核心对象dispatcherServlet.struts2的核心对象 ...
- jquery 1.9里面已经删除了toggle(fn1, fn2)函数
转自:http://blog.sina.com.cn/s/blog_50042fab0101c7a9.html jquery 1.9里面已经删除了toggle(fn1, fn2)函数: 引用 Note ...
- FairScheduler的任务调度机制——assignTasks(续)
上一篇文章浅析了FairScheduler的assignTasks()方法,介绍了FairScheduler任务调度的原理.略过了最后一步通过JobScheduler获取Task时调用JobInPro ...
- MariaDB设置主从复制[转载]
3. MariaDB设置主从复制 标签: mariadbMySQL主从复制 翻译人员: 铁锚 翻译日期: 2013年12月25日 原文链接: Setting Up Replication 主从复制 ...
- 理解阻止浏览器默认事件和事件冒泡cancelBubble
一.阻止浏览器默认事件 1.先举个例子说什么是 浏览器的默认事件 : 比如有一个输入框,当我按下字母a,就会在输入框显示字母a.就是浏览器本该发生的事情.小孩子一出生就会汲取母乳一样的道理,这些都是先 ...
- [C++基础]关键词volatile
volatile概念 volatile 是易变的.不稳定的意思. volatile关键字和const 一样是一种类型修饰符,用它修饰的变量表示可以被某些编译器未知的因素更改,比如操作系统.硬件或者其它 ...