前言
由于 Hexo 是静态博客,需要在本地配置,写文章,然后生成静态页面后上传到服务器。
这也就带来了备份的问题,我辛辛苦苦的配置了那么多主题相关的个性化配置,换电脑了怎么办? 重写? 怎么可能。!
那么备份本地的 Hexo 文件吧,这就涉及到一个问题,先看下我的博客在本地占用的空间和文件数量:
文件大小还可以接受,但…文件数量这么多,小文件复制起来那叫一个慢啊。
这里我们要考虑几个问题了:
- 哪些文件需要备份,哪些不需要。
- 如何备份,用什么工具备份。
- 备份到 U 盘?云盘?还是其他。
- 备份后如何恢复(重点)。
按照这几点,我们慢慢谈。
备份哪些文件?
备份我们只需呀备份一些重要的文件即可,一些安装后就没该变化,或会自动生成的文件就没必要备份了,以下几个是我测试后的较为精简的备份方案。
- 根目录下的几个配置文件,主要是
_config.yml
、package.json
。(必备份) source
文件夹,这个就不用说了,这里面包含了你写的文章的markdown
源码,这个才是最重要的。(必备份)hexo/themes/themes_name
这里的themes_name
指的是你的主题名称,可能你会对主题进行一些个性化的配置,所以这个主题全部备份了。(一般都只用一个主题,而且默认的主题也不用,所以默认主题不用备份。)。(必备份)scaffolds
文件夹,这个文件夹里是创建文章时的模板,如果你没修改过这个文件夹中的东西,可以不用备份。(根据情况备份).ssh
,如果你使用了免密部署,那么备份下你的公钥和私钥还是有必要的,你也可以选择,当然重新生成。(根据情况备份)
备份到哪里?
备份到哪里也是一个问题,备份到 U 盘的话就太麻烦了,而且也不能保证文件的实时性,万一电脑文件突然全部丢失了,还没来得及备份,那就完蛋了~。
所以直接排除掉本地备份这一项,而使用云服务备份,可以使用百度云,或 OneDriver 等服务,但还要考虑一个问题,就是能不能进行增量备份、选择性备份,方便不方便。
说先说说百度云,是大厂的,可靠性很高,但是呢,你可能备份上去简单,下载下来就难了。。。 然后就是 OneDriver 等国外的服务提供商,同样也是大厂,但是毕竟由于网速的问题,选择国外的服务商不太适合。
于是就轮到今天的主角了:坚果云
,不是广告,是确实挺好用。
记得用 选择性备份
:
备份后如何恢复?
- 安装 NodeJS 和 Git 这个就不多说了,并把备份的公钥私钥放到用户目录下的
.ssh
文件夹下,同时还要记得配置 Git 的邮箱和用户名: 1 2git config --global user.name "Your Name" git config --global user.email "email@example.com" - 再将备份到坚果云的文件都先同步(下载)到本地的一个文件夹。
- 然后创建一个目录,用来存放 hexo,一系列命令 : 1 2 3 4 5npm config set registry http://registry.cnpmjs.org npm install hexo-cli -g hexo init npm install npm install hexo-util --save
- 现在再把第二步的拿到的之前备份的文件,依次覆盖当前目录下的文件即可(
package.json
除外)。 - 对比备份的
package.json
和新生成的package.json
文件的区别,可以得知自己有哪些插件没安装,安装即可。(如果不小心覆盖掉了package
文件,也不要紧,打开node_modules
文件夹,查看跟备份的package.json
中的差别)
还原后,别忘了,在把现在的博客再设置下备份~~~