在GitHub上轻松搭建博客

荒凉一梦 提交于 2019-12-01 08:31:00

从2011年开始正式定期地写文章,最开始在Google AppEngine搭建了Wordpress,几个月后又将文章都转移到了CSDN。时间飞逝,一看自己的历史文章列表发现都快七年整了。CSDN也在进步,美观方面加了各种皮肤,功能方面支持了Markdown。用得时间长了也觉得有很不方便的地方,可能也是因为一直以来的需求比较低,本地写好后能发表就行。最近偶然间在知乎上看到一篇对CSDN博客系统的吐槽,包括身份验证、文章审核、页面广告等等。对这些吐槽倒并没有很在意,但是无意间看到了有人提到Jekyll在GitHub搭建博客系统。一直没有独立博客,就是有些嫌麻烦。这时一想自己需要的其实就是个渲染展示Markdown的地方,其他什么功能都不用。突然间豁然开朗!


1.Jekyll

1.1 超快速搭建

想要在GitHub上搭建自己的博客非常简单,按照Jekyll的说明,首先将其Fork到自己的代码库,然后将代码库的名字改成你的GitHub帐户名.github.io。过一会访问这个地址,你就能看到自己的博客了。如果还是不能访问的话,那就改一点_config.yml里的东西,强制GitHub编译生成你的博客。

1.2 本地运行

有时我们先定制自己的博客,那么就需要提交代码、再Push、再去GitHub上看效果。这样一来太麻烦,二来把博客系统改瘫痪了的话还得再回滚代码。这时就需要本地运行了,这样不用提交代码就能在本地看到效果,确定好使后再提交Push到GitHub就行。风险低,而且效率高。

首先如果没用过Ruby的gem,则需要先安装它。Ubuntu/Mint系的apt安装方法如下。如果是CentOS的yum或其他平台的话,请自行搜索如何安装。

$ sudo apt-get install rubygems ruby-dev

现在就可以安装GitHub的插件,并本地运行测试了。

$ sudo gem install github-pages
$ jekyll serve

现在访问http://127.0.0.1:4000应该就能看到你的博客了。

1.3 写作流程

以后的写作流程变得更为简单。有了想法后就在本地代码库的_posts文件夹里创建文字,格式为YYYY-MM-DD-title.md。前面是年月日,然后是标题,中英文皆可。打开自己喜欢的Markdown编辑器,Sublime配Vim,或者最近发现了一个Linux下非常漂亮的Markdown编辑器Typora。在这样的编辑器里写文章就是种享受啊!编辑完成或者完成了一部分后,就提交Push,这样别人也能看到你进展中的文章了。


2.Hype

博客的基本功能搭建好了,就要开始折腾样式了。搜索了不少主题,但都花里胡哨的,不太适合技术文章。最终找到了Hype,一个非常简洁漂亮的主题。但问题就是Hype本身已经包含了所有代码,没有提供如何安装到一个已有的Jekyll的方法。于是尝试着Fork了一份之后,把Hype代码覆盖到了Jekyll代码库,目前看来是可行的。

首先安装各种依赖:

$ sudo gem install jekyll-paginate
$ sudo gem install jekyll-gist
$ sudo gem install redcarpet
$ sudo gem install pygments.rb

之后_config.yml里主要修改两个地方,一是注释掉ralative_permalinks,二是paginate和gist加到plugins里。

# Dependencies
markdown:         redcarpet
highlighter:      pygments

# Permalinks
permalink:        pretty
#relative_permalinks: true

# Setup
title:            Chen's Blog
tagline:          'A Jekyll theme'
description:      'A brazen two-column <a href="http://jekyllrb.com" target="_blank">Jekyll</a> theme that pairs a prominent sidebar with uncomplicated content. Made by <a href="https://twitter.com/mdo" target="_blank">@mdo</a>.'
url:              http://cdai.github.io
baseurl:          /

author:
  name:           'Mark Otto'
  url:            https://twitter.com/mdo

paginate:         5

# Custom vars
version:          2.1.0

github:
  repo:           https://github.com/poole/hyde

plugins: [jekyll-paginate, jekyll-gist]

之后本地运行或者提交到GitHub,你就能看到你的博客变成了这种效果Chen’s Blog。再也不用等最后完成再提交到CSDN了,每天写好就提交,自己挖坑自己填…… 最后完成再提交到CSDN,Typora中Ctrl+Shift+C可以Copy as Markdown,然后直接拷贝到CSDN的编辑器就行了。现在开始享受写作的乐趣吧!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!