很久之前就知道Github可以发布自己的博客,因为仅支持静态文件,一直懒于动手自己进行编辑。再了解到还存在 JekyII​ 和 Hexo 这样的内容生成框架后,终于决定体验一下。

一、本地环境准备。

Github Pages​的申请过程就不再搬砖,Github的页面上说的很清楚,注意每个用户只能创建一个与自己用户名相同的Pages。

Pages申请好之后,可以克隆到本地的文件夹,这样 hexo 运行的文件夹就准备好,可以开始准备本地的hexo环境。

hexo需要有nodes和nam的支持,我先安装了6.9.2版本的node​,使用的是安装包,当然也可以使用homebrew等工具。安装hexo很简单:

$ npm install hexo-cli -g

然后进入到 github Pages 的本地目录执行:

hexo init blog
cd blog
nam install
hexo server

当看到Hexo is running的提示之后,就可以按照提示的地址在浏览器中预览博客效果了。

Mac下体验Hexo与Github Pages搭建_BLOG

_config.yml 是博客的配置文件,能够定义博客名称、作者等各种全局的参数。

package.json 应用数据,EJS、Sylus、Markdown三个渲染工具是默认安装的,如果不需要刻意卸载。但是对于最终要是使用 Markdown 来编辑博客的我来说,那是必不可少的。

source 文件夹,文章原始的 md 文件都放在这个文件夹下面。通过生成器会对该文件夹下的 markdown、html 文件进行解析,其他的文件只做拷贝,放入 public 文件夹。

themes 主题文件夹,默认的主题为 landscape。

二、主题更换。

默认的主题美观性基本上没有,hexo 支持自己开发博客主题,但是刚开始的时候最好还是选择一个比较成熟的主题先上手。hexo 官方有一个提供预览图的列表​,也有一个更完整的列表​,我这里要使用的是 yilia,后续考虑自己定义一个。

更换theme的步骤包括获取 theme 文件,修改配置,可以参考 yilia 的文档进行。

三、生成与发布

编辑完自己的文章后,本地预览觉得效果还可以的话,就可以生成等待发布的页面了。

hexo generate

执行完成后,可以在 public 文件夹下看到生成的文件。由此可以看到,hexo 中有原始的文档文件,也有发布后生成的网页文件。

修改 hexo 配置文件中关于部署的部分

# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
type: git
repo: https://github.com/yourname/yourname.github.io.git
branch: hexo

至此,使用 hexo 搭建环境发布内容的工作就完成了,你可以通过 http://yourname.github.io 访问页面,查看效果。

为了让这两部分文件都保存下来,我们利用 git 中的分支功能。在本地环境查看有多少分支 git branch -a,一般只有一个 master。创建一个新的分支 git branch hexo

将分支推送到远程服务器 git push origin hexo,在 hexo 的配置文件中选择将内容发布到 hexo 而本地的源码提交到 master 中。