Hexo博客多端同步问题
搭完博客,发现只有公司电脑上有源文件,如果回家就没发继续更新博客了。也不能拿着U盘到处拷贝。所以就把博客源文件放到github上解决同步问题。
博客源文件同步
在博客根目录执行
git init
git remote add origin git@github.com:lanpangzhi/lanpangzhi.github.io.git # 添加远程仓库 注意这里要添加你自己的仓库 lanpangzhi 换成你自己的用户名
git checkout -b hexo # 新建hexo分支并切换到hexo分支
git add . # 所有变化提交到暂存区
git commit -m "解决同步问题" # 提交文件
git push origin hexo # 推送hexo分支
这就成功了,github上已经有博客的源文件了。
推荐把hexo设置为默认分支。
git submodule 实现第三方主题同步
因为之前是直接把第三方主题克隆到博客目录,有什么改动是无法推送到作者Git仓库的,这个时候需要把第三方主题的项目Fork到自己仓库,自己账号下生成一个同名的仓库,并对应一个url,我们应该git clone自己账号下仓库的url。
执行如下操作。
git submodule add git@github.com:lanpangzhi/hexo-theme-next.git themes/next
把自己仓库下面第三方主题添加到Git子模块, 注 : themes/next 这里的目录是因为我用的next主题才会写themes/next 如果你用的不是next请把next替换成你的第三方主题文件夹名字。
博客的根目录会多一个.gitmodules文件,这是一个配置文件,保存了项目 URL 和你拉取到的本地子目录。
这就添加成功了,然后执行如下操作。
git add . # 所有变化提交到暂存区
git commit -m "添加第三方主题Git子模块" # 提交文件
git push origin hexo # 推送hexo分支
更换电脑同步博客和第三方主题
同步博客
电脑上一定要先node和git,执行如下操作。
npm install hexo-cli -g # 先安装hexo的脚手架
git clone git@github.com:lanpangzhi/lanpangzhi.github.io.git # 下载项目,因为hexo 是默认分支,所以这里直接会下载hexo分支
npm i # 安装依赖
hexo s # 启动服务器
剩下的就自行操作了。博客已经完成了同步。
注:每次写完文章部署网站后,记得再执行如下操作。
git add . # 所有变化提交到暂存区
git commit -m "新增xxx文章" # 提交文件
git push origin hexo # 推送hexo分支
同步第三方主题
在博客根目录执行如下操作。
git submodule init # 初始化本地配置文件
git submodule update # 拉取子模块
如果第三方主题有修改的,修改完成后在第三方主题目录执行。
git add . # 所有变化提交到暂存区
git commit -m "修改主题xxxx" # 提交文件
git push origin master # 推送master分支
这样就会把修改的主题推送到自己的仓库。
这样就实现多端同步了。
我的博客和github地址
参考
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
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。