Hexo同步源文件至GitHub

以前用Hexo最大的痛点就是想在其他电脑上写文章然后更新站点很麻烦,或者换系统后发现忘记备份源文件,然后以前写的东西又得通过各种方法找回再重新部署。没办法,静态站点就是这样。

此时程序员思维就出现了,能不能在我每次写完新文章后自动备份源文件,或者我在hexo d的时候一起把我的.md文件也deploy上去。

当然,方法各种,这里我直接使用 hexo-deployer-git 这个小插件的功能,相对简单些。

安装方法

直接一句话搞定:

1
npm install hexo-deployer-git --save

当然,作者说如果想使用最新版,可用下面的命令:

  • 对于npm版本低于4的用户
1
$ npm install [email protected]:hexojs/hexo-deployer-git.git --save
  • 对于npm版本低于5的用户
1
$ npm install git+ssh://[email protected]:hexojs/hexo-deployer-git.git --save

查看自己npm版本的命令:npm --version

其实如果你原先就是将hexo部署在GitHub Pages,那这个插件是已经安装过了,只需要进行相关配置就行。

配置

修改hexo根目录下的_config.yml文件:

1
2
3
4
5
6
7
8
9
10
11
12
# _config.yaml
deploy:
- type: git
repo: [email protected]:<username>/<username>.github.io.git
branch: master
- type: git
repo: [email protected]:<username>/<username>.github.io.git
branch: src
extend_dirs: /
ignore_hidden: false
ignore_pattern:
public: .

说明

  • 第一个master分支是你静态页面所在分支,也就是hexo g后生成的public文件夹中的内容
  • 第二个src分支就是备份你源文件的,具体参数请参考原作者写的

如此之后,在每次hexo d后就能将你的源文件备份至src分支,没有更爽。

当然,安装后每次 deploy 会比原来稍慢点。

还有,未配置过git user信息的会提示要配置user.mail和user.name:

1
2
git config --global user.email "[email protected]"
git config --global user.name "Your Name"

参考

本文完。

© 2019 lvbin's Blog All Rights Reserved.
Theme by hiero