- Hexo是一个博客框架,基于Node.js,用Markdown创作博客内容,Hexo将其翻译成布局精美的静态HTML。
- GitHub Pages,创建好的博客文章(网页)可以发布到 GitHub Pages。
- Git 一个分布式代码版本控制工具
用Github写博客
github.com上创建账号
在github.com上创建一个账号,比如叫:lixiaobai.
github.com上创建仓库
创建一个代码仓库,名字必须为:<你的账户名>.github.io 用来存放博客文章。以上面的账户为例,你的仓库名就应该为:lixiaobai.github.io,然后通过浏览器访问 https://lixiaobai.github.io 就可以访问自己的博客了。
最开始,你的访问可能空空如也。向该代码仓库里增加 hello.md,内容为:
1 | # Welcome Li Xiaobai. |
浏览器访问 https://lixiaobai.github.io/hello.html ,看看效果怎么样。
思考一下博客工作的过程:你写了一篇Markdown文件hello.md,但是却通过hello.html访问了它的内容,怎么做到的呢?其实也不难理解,GitHub Pages实际上做了自动翻译工作,预先将hello.md翻译成了hello.html。
用Hexo写精美的博客
GitHub Pages官方采用了Jekyll博客框架,编译的HTML可以使用各种漂亮的主题,不过功能还不够强大,所以我选择Hexot替代Jekyll。
本文并不打算介绍Hexo的安装和配置,如果你懂Node.js和Markdown,官网 https://hexo.io 的文档已经足够清楚;如果你不懂Node.js,说给你,你也用不了。
用Hexo写完博客,使用hexo g -d命令将其发布GitHub Pages。它实际分成了两步:
- 把博客内容翻译了 html 文件;
- 用git把html发布到名字为 lixiaobai.github.io 的 GitHub 仓库的 master 分支(这一步需要做对应的设置)
博客管理最佳实践
源文件和编译文件
- 你应该为 lixiaobai.github.io 仓库创建一个分支,如 blog,将博客源文件保存到该分支;
- 总是在 blog 分支编写博客,然后通过hexo d -g 发布到 master 分支。
更好的主题
hexo 默认主题不合我意,还是:Next 漂亮。 再漂亮的主题也可能需要个性定制。因此将 https://github.com/theme-next/hexo-theme-next fork到自己的账户里,lixiaobai fork出来名字应为: https://github.com/lixiaobai/hexo-theme-next , 便于后续更改保存。
建议使用 git submoudle 管理 Next 主题,进入hexo工程目录运行:
1 | git submodule add https://github.com/lixiaobai/hexo-theme-next.git themes/next |
下次在其他地方clone项目要使用 git submodule update –init –recursive 更新, 更多关于submodule看这里