前言
Hexo 的文章源文件就是一个个 Markdown 文本,自己一直把这些文件备份在 GitHub 上。渐渐发觉,如果只把 GitHub 当作普通网盘,那真是有点大材小用了。于是稍作折腾,成功地把 GitHub 上的备份关联到主题中。现在,在文章文末版权区,可以很方便地跳转查看文章更新记录、历史版本以及下载源文件。文件处理
文件命名
- 为了便于文章识别和自动关联文件,文章 Markdown 的文件名应该符合规范。
- 建议使用 文章建立日期.固定链接
YY-MM-DD.permalink.md
的形式。 - 在文章 [Front-matter] 中设置固定链接 permalink,然后填写文件名,例如本文完整文件名为
2016-01-10.hexo-post-version-control.md
- 为什么不使用文章标题作为文件名:
一是因为标题偶尔会变动,修改相对麻烦;二是标题可能包含不能用作文件名的符号,导致关联出错。
文件备份
- 把
hexo/sources/_posts
文件夹同步备份到你的 GitHub 上,不熟悉 Git 的可使用 GitHub Desktop 操作,具体方法自行搜索。
代码添加
把下面 EJS 代码添加到主题文章模板合适位置中,Yelee 主题是添加在文末版权区中。参考备份文件在 Github 的链接修改前半部分地址。
1 | <% if (post.backup != false){ %> |
代码简析
1 | <!-- 不设置 backup: false 则默认显示 --> |
Blame
- 顺序列出文章内容,左侧显示各部分 commit 信息,最后修改时间等。
History
- 列出与该文件相关的更新记录 (commit),按路径匹配。我一般直接就用提交时间作为 commit 信息了,想要更直观查看变动的可以在提交时书写更完善的 commit 信息。
.md Raw
- 在线查看或者直接下载文章原始 Markdown 文本。
后记
- 这是半自动的版本控制,需要手动把文章同步备份到 GitHub;
- 代码部分的变动基于 Yelee 主题,其它主题用户可以参考 另一篇文章 的方法,自行添加代码到合适位置;
- 小图标来自 Font Awesome,需主题支持才会正常显示;
- 本文不详解 Hexo 基础知识,有设置项不理解的请先阅读 Hexo 官方帮助文档。
相关链接
- GitHub Desktop: https://desktop.github.com/
- Font Awesome: http://fontawesome.io/
- Hexo 使用文档: https://hexo.io/zh-cn/docs/
- Hexo 文章版本控制 by MOxFIVE on
2016/01/10
: https://github.com/MOxFIVE/M-Hexo-Blog/commit/d8a4942dab23920837cc70249c31697d36e49235