使用github+jekyll搭建博客

2017-07-06 更新

改用Hexo建站

参考:

hexo你的博客

手把手教你使用Hexo + Github Pages搭建个人独立博客


在GitHub上创建repository

搭建要用github pages,首先要在github中建立一个基于你的用户名的repository: 比如说我,就要建立名为passerbycrk.github.io的repo。在以前的github版本中还需要在后台开启pages的功能,现在系统检测到这样的repo名称之后,会在setting中自动开启GitHub Pages的功能,如下图:

这样之后你就可以把这个repo克隆到本地随意进行修改了,在这个里面上传的网页就是你的网站的内容了,可以上传一个index.html试一试,这就是你的网站主页了。
关于GiuHub的使用,可以看几个比较好的入门教程:GiuHub使用教程传送门

集成本地部署环境

之后我们就要在本地部署jekyll,jekyll的原理很简单。这是一个已经合成好的静态html网站结构,你用这个结构在username,github.io文件夹里面粘帖好所有文件。再把更新完的本地repo推送到GitHub的master branch里面,你的网站就更新建设完毕了。
首先你需要ruby来使用本地jekyll。Mac和Linux可以用Terminal配合yum或者brew这样的包管理器很方便的安装ruby。Windows下更是方便,可以直接中集成好的Ruby installer来进行安装,文章里的就是传送门。
安装完ruby,之后就是要安装RubyGems,gem是一个ruby的包管理系统,可以用gem很方便的在本地安装ruby应用。
安装方法如下:

  • 在RubyGems官网上下载压缩包,解压到你的本地。
  • 在Terminal中输入以下代码:
  • 
    $ cd your path to RubyGems // RubyGems解压的位置
    $ ruby setup.rb
    

安装jekyll

有了gem之后安装jekyll就很容易了,其实用过nodejs和npm的同学应该很熟悉这样的包安装,真是这个世界手残脑残们的救星。。。。。(楼主不自觉的摸了摸自己快残了的手)

  • 接下来在Terminal中输入安装jekyll代码:
  • 
    $ gem install jekyll 
    

等待安装完成。

文件目录结构

好了,现在你的电脑已经准备完毕了。如果你是想自己捣鼓,可以根据这样的目录结构在你的{username}.github.io文件夹下建立以下目录结构:

  • 
      ├── _config.yml
      ├── _drafts
      |   ├── begin-with-the-crazy-ideas.textile
      |   └── on-simplicity-in-technology.markdown
      ├── _includes
      |   ├── footer.html
      |   └── header.html
      ├── _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
    

选择模板

如果你只是个普通用户,只是想要一个模板然后开始写自己的博客。那就很容易了,有几个可以简单开始的模板。

本地部署发布

下载完了模板,可以吧里面的内容解压到你自己的网站目录底下。这时候你可以测试一下:

  • 
    $ cd your website path // cd到你的网站目录下
    $ jekyll serve
    
  • 接下来部署的博客会运行在 http://localhost:4000/

  • 在浏览器中输入以上地址回车后就可以看到你用模板搭建的网站了。

配置

这时候可以看一下jekyll的设置,让你把模板变成你自己个性化的内容。在网站根目录下面找到 _config.yml,这里会有几个比较关键的设置:
里面的permalink 就是你博客文章的目录结构,可以用pretty来简单的设置成日期+文章标题.html,也可以用自己喜欢的结构来设置。
记得把encoding 设置成utf-8,这样有利于中英文双语的写作和阅读。

发布内容

到这里你就可以开始写博客了,所有的文章直接放在_posts文件夹下面,格式就是我们之前提到的markdown文件,默认的格式是.md和.markdown文件。每篇文章的开始处需要使用yml格式来写明这篇文章的简单介绍,格式如下:

---
layout:     post
title:      "文章标题"
subtitle:   "文章副标题"
date:       2016-09-23 12:00:00+00:00
author:     "作者昵称"
---

layout就是post,让jekyll知道你这是一篇post,很直观。需要注意的是里面的date,必须按照yml的语法来写,否则就会出现编译错误。可以只用YYYY-MM-DD来显示日期,也可以像我一样在后面加上 HH:MM:SS+00:00 来表示更具体的时间。

结束

到此为止可以开始尽情的写博客了,用GitHub软件同步到你的repository里面,网站上面就可以进行正常的显示了。

参考