hexo分支上保存了原始博客文件(相关md文件),master分支上是博客展示的内容(相关html)
前段时间由于电脑重新安装了系统,导致自己的博客文件丢失,而github上面的只有发布后的文件,没有博客的源文件。想要恢复到源文件至今还没有找到解决方法,好在原来的博客内容不多,丢失了也无所谓了。但是以后要是换电脑了,这种问题怎么解决呢?今天介绍一个解决方案。
其实方法很简单,首先应该有两个分支,一个分支用来保存发布后的内容,一个分支用来保存源文件.这里用master分支保存发布后的内容,hexo分支保存源文件内容.
第一步
设备A上搭建github博客
第二步
在博客根目录下,打开_config.yml,添加如下内容
1 | deploy: |
可以看到现在已经有一个master分支,但是这时候个人博客还不是一个git目录
提交代码
1 | // hexo编译源文件,生成静态文件,也可以分开执行 |
hexo clean: 清空博客缓存
hexo g(hexo generator 的简写):生成静态文件
hexo d(hexo deploy的简写): 部署文件,这条命令会使用第一步中的配置信息进行部署
现在打开yourname.github.io就能够看到你的博客了
第三步
因为我用的是next主题(其他主题做相似处理).删除next文件下的.git文件夹,这是因为我们在要我们的博客下创建.git,如果子目录下也有.git,会有问题.然后执行以下命令
1 | // git初始化 |
以后操作都是在hexo分支中,当我们修改了我们的博客内容时,先执行hexo clean && hexo g && hexo d ,这个命令用来将本地博客发布到github上
然后在将本地内容提交到hexo分支中
第四步
假设我们需要在电脑B上搭建我们之前的博客内容.我们需要拉取我们的hexo分支,因为hexo分支是源文件,master可以不用拉取
1 | // 克隆分支到本地 |
第五步
电脑B上编辑博客内容,静态文件提交到master分支,源文件提交到hexo分支
1 | //博文提交到master上面。 |
第六步
在电脑A上可以同步hexo分支,开始更新博客
注意: 以后操作都是在hexo分支中,当我们修改了我们的博客内容时,先执行hexo clean && hexo g && hexo d ,这个命令用来将本地博客发布到github上
然后在将本地内容提交到hexo分支中