Hexo博客的备份与恢复
备份
背景
Hexo 博客源文件是保留在本地的,hexo deploy 部署的文件只是 hexo 生成的静态网页文件,由于本人是在 Linux 虚拟机环境下搭建 Hexo 博客开发环境的,而虚拟机经常重做系统,一旦忘记备份 Hexo 博客源文件,就会导致以前的博客无法更新维护了。
思路
在 Github 上新建一个仓库 hexobackup,专门用于备份保存hexo 博客源代码
这样备份博客源文件的好处:
- 如果电脑突然罢工,我们的源文件也不会丢失。
- 在重做系统或更换电脑的时候,我们直接 clone 备份仓库到本地就可以了。
操作
前提准备
- 你已经初始化好了自己想要备份的那个博客。
- 操作系统上 GIT、GitHub 的环境也已经准备好了。
由于 hexo deploy上传部署到 git hub pages 的其实是 hexo 编译后的文件,在本地目录里自动生成的 .deploy_git里面,是用来生成网页的,不包含源文件。而其它文件 ,包括我们写在 source 里面的文章、配置文件、主题文件,都没有上传到 git hub 仓库。
详细步骤
在 github上建一个仓库,命令为 hexobackup ,(这里名称自己随便起)。
原始的博客根目录 blog_folder 下只有 .deploy_git (隐藏文件夹),是没有.git文件夹的,于是我们先去自己的家目录或者桌面等随便一个地方,把刚刚的 hexobackup 仓库给 clone下来。然后剪切出里面的 .git 隐藏文件夹,复制到需要备份的博客根目录 blog_folder下。
1 | git clone git@gitee.com:shallingzhang/hexobackup.git |
- 在博客根目录下修改 .gitignore 配置文件,用来在上传时候忽略一些文件,即不上传 .gitignore 配置文件中忽略的文件。此文件有就直接修改,没有的话请自己手动添加。
.gitignore 配置文件内容如下:
1 | .DS_Store |
注意,如果你之前克隆过theme中的主题文件,那么应该把主题文件中的.git文件夹删掉,因为git不能嵌套上传,最好是显示隐藏文件,检查一下有没有,否则上传的时候会出错,导致你的主题文件无法上传,这样你的配置在别的电脑上就用不了。
hexo 的源文件作用说明:
1 | _config.yml 站点的配置文件,需要拷贝; |
- 通过在hexo博客的根目录下执行如下命令,将本地文件备份到 Github 上。
1 | git add . |
恢复
前提准备
Hexo 基础开发环境已经部署好,包括 nodejs (已集成npm) ,git等。
详细步骤
- 克隆备份仓库到本地
1 | git clone https://gitee.com/shallingzhang/hexobackup.git |
- 安装所需程序及插件
在博客根目录下执行如下命令,在此不需要执行hexo init这条指令,因为不是从零搭建起新博客。
1 | npm install hexo-cli -g |
- 重新生成网站文件
1 | hexo clean |
- 访问本地站点 http://localhost:4000 查看是否恢复成功。