Hexo博客多端同步问题
搭完博客,发现只有公司电脑上有源文件,如果回家就没发继续更新博客了。也不能拿着U盘到处拷贝。所以就把博客源文件放到github上解决同步问题。
博客源文件同步
在博客根目录执行
1 | git init |
这就成功了,github上已经有博客的源文件了。
推荐把hexo设置为默认分支。
git submodule 实现第三方主题同步
因为之前是直接把第三方主题克隆到博客目录,有什么改动是无法推送到作者Git仓库的,这个时候需要把第三方主题的项目Fork到自己仓库,自己账号下生成一个同名的仓库,并对应一个url,我们应该git clone自己账号下仓库的url。
执行如下操作。
1 | git submodule add git@github.com:lanpangzhi/hexo-theme-next.git themes/next |
把自己仓库下面第三方主题添加到Git子模块, 注 : themes/next 这里的目录是因为我用的next主题才会写themes/next 如果你用的不是next请把next替换成你的第三方主题文件夹名字。
博客的根目录会多一个.gitmodules文件,这是一个配置文件,保存了项目 URL 和你拉取到的本地子目录。
这就添加成功了,然后执行如下操作。
1 | git add . # 所有变化提交到暂存区 |
更换电脑同步博客和第三方主题
同步博客
电脑上一定要先node和git,执行如下操作。
1 | npm install hexo-cli -g # 先安装hexo的脚手架 |
剩下的就自行操作了。博客已经完成了同步。
注:每次写完文章部署网站后,记得再执行如下操作。
1 | git add . # 所有变化提交到暂存区 |
同步第三方主题
在博客根目录执行如下操作。
1 | git submodule init # 初始化本地配置文件 |
如果第三方主题有修改的,修改完成后在第三方主题目录执行。
1 | git add . # 所有变化提交到暂存区 |
这样就会把修改的主题推送到自己的仓库。
这样就实现多端同步了。
参考
http://devtian.me/2015/03/17/blog-sync-solution
https://git-scm.com/book/zh/v1/Git-%E5%B7%A5%E5%85%B7-%E5%AD%90%E6%A8%A1%E5%9D%97