构建一个自己的Hexo博客

hexo的主题确实不错,所以把我的blog从jekyll转到hexo下来了。上一篇讲到如何安装一个hexo博客,这次讲讲怎么配置及使用它。

推荐一个不错的主题叫:raytaylorism。访问它的站点,里面有详细的说明。

最近也使用了Next主题,也非常不错的,官方主页看这里,里面的说明很清晰,配置过一次raytaylorism,再配置Next就是照样画葫芦。

安装

1
2
cd yourblog
git clone https://github.com/raytaylorlin/hexo-theme-raytaylorism.git themes/raytaylorism

请不定期git pull一下主题以便获得最新的功能。请在pull之前先备份好你原来的配置。

启用(重要)

  • 修改 _config.yml 中的theme一项的值为raytaylorism

  • 由于本主题使用了Data Files数据文件和额外的layout文件,所以请复制以下文件到你的博客目录中,否则在启动server时可能会报错。

  • 复制yourblog/themes/raytaylorism/_data文件夹到yourblog/source目录下

  • 复制yourblog/themes/raytaylorism/_md/下所有文件夹(about和reading)到yourblog/source目录下

  • 在你的yourblog/_config.yml配置文件的#pagination的位置添加下面配置(禁用归档、标签、目录页面的分页功能)

1
2
3
4
5
6
archive_generator:
per_page: 0
tag_generator:
per_page: 0
category_generator:
per_page: 0

重新启动

1
$ hexo server

重启看到整个界面都换了。

开始第一篇文章

新建草稿

1
2
$ hexo new draft my-first-blog
INFO Created: ~/myblog/source/_drafts/my-first-blog.md

用SublimeText编辑这个文件,开始写你的第一篇文章。(如何用SublimeText编辑可以参考:使用Sublime Text写markdown

要预览写的文章需要打开草稿预览功能:

1
$ hexo server --draft

发布文章

未发布前,文章一直在_draft目录下,需要发布到_post下,才会在正式环境下看到。

1
$ hexo publish my-first-blog

成功后会文件会被移到_post目录下。

** 刷新你的网页,就能看到你新发布的文章了 **

部署到github pages

github pages原生支持jekyll解析,hexo部署到github不像jekyll,需要generate好生成出来的/public目录放到github pages上。

不过一点都不麻烦,因为hexo支持了直接部署到git上。
github pages的申请,可以参考该文章如何使用Jekyll和github Pages搭建博客

安装hexo-deployer-git

1
$ npm install hexo-deployer-git --save

修改_config.yml

1
2
3
4
5
deploy:
type: git
repo: <repository url>
branch: [branch]
message: [message]

例如:

1
2
3
4
deploy:
type: git
repo: https://github.com/itvincent-git/itvincent-git.github.io.git
branch: master

生成public及部署上github

1
$ hexo d -g   (相当于hexo deploy -g)

运行过程中会提醒输入github的账号及密码。而且会在本地目录下生成一个/.deploy_git/的目录,里面放着跟/public里相仿的文件,实际上这就是本地的git repo。如果出现有目录的同步问题,可以把该目录删除,hexo会重新生成好。

1
INFO  Deploy done: git

看到输出这个,说明已经部署到git,打开你的github pages主页看看效果吧。

文章作者: Vincent Zhong
文章链接: http://www.itvincent.net/2017/01/25/hexo-setting-blog/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 itVincent的博客