博客备份

备份对于静态博客来说是及其重要的,本文章介绍一种hexo-git-backup插件备份的办法来实现hexo博客备份

安装插件

  • 首先输入命令hexo version查看Hexo版本,如图所示,我的是5.2.0版本

  • 安装备份插件,如果你的 Hexo 版本是 2.x.x,则使用以下命令安装:

1
$ npm install hexo-git-backup@0.0.91 --save
  • Hexo 版本是 3.x.x,则使用以下命令安装:
1
$ npm install hexo-git-backup --save

新建仓库

  • 在GuiHub中新建仓库,例如Hexo_Backup,权限为private,分支为master

  • 复制所建库的SSH链接

  • 在Hexo配置文件中添加

1
2
3
4
backup:
type: git
repository:
backup: git@github.com:xingjiahui/Hexo-Backup.git,master(分支名,新库为main)

新建的github仓库默认分支为main,旧仓库默认分支依旧为master,一定要分清楚分支名

使用

1
$  hexo b(back)

每次更新博客后,都需要hexo b来备份

备份的用处:

  • 当hexo g 报错没有头绪时,可以使用备份文件
  • 当本地文件丢失时,可以使用备份文件
  • 使用前提,配好环境(已下载Node.js和Git)

博客恢复

博客文件

  • 建立hexo博客都会有一个独立的文件夹,电脑转移时安全的做法是将整个文件夹拷贝
  • 必备文件
    • config.yml(站点配置)
    • theme(主题文件夹)
    • source(博客内容文件)。
  • 次要文件
    • scaffolds(文章的模板)
    • package.json(使用包的说明文件)
    • .gitignore(限定在提交的时候哪些文件可以忽略)
    • 三个次要文件为自动生成的,因此丢失也不怕影响博客内容,后续在hexo init时会生成这三个文件
  • 需要删除的文件
    • .git文件
    • node_modules(进行npm install会重新生成)
    • public(执行hexo g时会重新生成)
    • .deploy_git文件夹(执行hexo d时会重新生成)
    • db.json文件
    • 其实上面这些可删除的文件即为.gitignore文件里面记载的可以忽略的内容

环境搭建

  • 如果是更换了电脑,那么需要重新配置环境,即安装Node.js以及Git

  • 下载安装后,右击鼠标Git Bash Here,输入如下命令,检测是否安装成功

1
$ node -v
1
$ npm -v
1
$ git --version

源文件拷贝

  • 如果使用了hexo-git-backup插件备份,只需要从github上拉入本地即可
1
$ git clone https://github.com/username/备份仓库名.git
  • 如果是将原来博客文件拷贝到新电脑上,可以全部拷贝,或者只拷如下几个目录
1
2
3
4
5
_config.yml
package.json
scaffolds/
source/
themes/

搭建hexo

注意:安装Hexo需要在你刚才拷贝源文件的文件夹内安装

  • 在你刚才拷贝源文件的文件夹内,右键点击 Git Bash:,输入以下命令
1
2
$ npm install -g cnpm --registry=https://registry.npm.taobao.org
$ cnpm -v
1
2
$ cnpm install -g hexo-cli
$ hexo -v
  • 安装部署插件
1
2
$ npm install 
$ npm install hexo-deployer-git --save #文章部署到git 的模块
  • 测试
1
2
3
$ hexo init
$ hexo g
$ hexo s

本机访问localhost:4040即可看到自己发布的文章以及之前博客的界面,现在只差将博客托管到github page上了。

注意:如果仓库有改动,要更改配置文件里面deploy下的repository和backup下的repository

生成新密匙

  • 更换了新电脑,需要在Github添加新电脑产生的密匙,并删除之前配好的密匙
  • 在刚才拷贝源文件的文件夹内,右键点击Git Bash Here ,输入如下命令后一直按回车
1
2
3
# 设置用户信息
$ git config --global user.name "Gitub用户名"
$ git config --global user.email "GitHub邮箱"
1
$ ssh-keygen -t rsa -C "Github邮箱地址"
  • 然后会生成密匙,一般是在C:\Users\电脑自定义名称\.ssh下,里面的pub文件就是产生的密匙

  • 复制pub文件里的内容,进入Github网址,点击头像找到setting设置,选择SSH and GPG keys,点击New SSH key,然后给密钥命名并将.pub文件中的内容复制到key

  • 在终端执行命令测试一下是否成功

1
$ ssh -T git@github.com

部署发布

1
2
3
$ hexo clean   # 清除缓存 网页正常情况下可以忽略此条命令
$ hexo g # 生成静态网页
$ hexo d # 开始部署

总结

  • 本地环境搭建好(node git hexo

  • github 秘钥配置好

  • 部分扩展插件装好 $ npm install hexo-deployer-git --save

  • 用户验证填写准确