• Hexo博客的备份与恢复


    可能有的小伙伴认为备份不就创建一个仓库多简单;或者说我将Hexo博客源文件拷贝到U盘不就可以了吗,可是你写一篇文章或者更新一次配置就要拷贝一次不是很麻烦吗?

    备份博客源文件的好处:

    • 如果电脑突然罢工,我们的源文件也不会丢失。
    • 有时候不方便需要更换电脑写作,我们直接clone仓库就可以了。

    前提、机制

    前提是你已经初始化好了自己想要备份的那个博客。GIT、GitHub/Gitee环境已经准备好了。

    机制是这样的,由于hexo d上传部署到github的其实是hexo编译后的文件,是用来生成网页的,不包含源文件。

    image-20210220111936510

    也就是上传的是在本地目录里自动生成的.deploy_git里面。

    其他文件 ,包括我们写在source 里面的文章,和配置文件,主题文件,都没有上传到github

    备份博客

    我是用的gitee,因为Github有时候速度慢上不去。

    ⑴Git配置多个SSH-Key

    我用Github部署博客,用Gitee备份博客,所以需要两个SSH-Key,现在已经有了Github的,所以再新建一个Gitee的就欧克了

    解决方法

    1.生成一个Gitee用的SSH-Key

    ssh-keygen -t rsa -C 'xxxxx@qq.com' -f ~/.ssh/gitee_id_rsa
    

    2.输入命令,无脑下一步即可,会生成密钥文件

    image-20210220112600271

    3.将gitee_id_rsa.pub用记事本打开,把里面的密钥填到Gitee

    image-20210220112712320

    4.在 ~/.ssh 目录下新建一个config文件,添加如下内容(其中Host和HostName填写git服务器的域名,IdentityFile指定私钥的路径)

    # gitee
    Host gitee.com
    HostName gitee.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/gitee_id_rsa
    

    4.用ssh命令测试

    ssh -T git@gitee.com
    

    成功的话会返回下图内容

    ⑵新建仓库

    新建一个仓库,自己命名,勾选README

    image-20210220113141285

    ⑶获取 .git文件夹

    原始的博客文件夹只有.deploy_git,是没有.git文件夹的,于是我们先去桌面或者哪里随便一个地方,把刚刚的hexo分支给clone下来。然后剪切出里面的.git文件夹,复制到现在的博客文件夹中。

    image-20210220113455792

    命令:

    git clone git@gitee.com:muzihuaner/hexo.git
    //git@gitee.com:muzihuaner/hexo.git 改为你自己的
    

    如图:

    image-20210220113609444

    ⑷创建.gitignore

    用来在上传时候忽略一些文件,即不上传.gitignore中忽略的文件。有就不用管了,没有的话自己手动添加。

    .DS_Store
    Thumbs.db
    db.json
    *.log
    node_modules/
    public/
    .deploy*/
    1234567
    

    注意,如果你之前克隆过theme中的主题文件,那么应该把主题文件中的.git文件夹删掉,因为git不能嵌套上传,最好是显示隐藏文件,检查一下有没有,否则上传的时候会出错,导致你的主题文件无法上传,这样你的配置在别的电脑上就用不了了。

    ⑸备份

    通过如下命令将本地文件备份到Gitee上。
    在hexo博客的根目录下执行

    git add .
    git commit  -m  "backup"  (注:“backup”里面换成你需要,如“first commit”)
    git push -u origin master   (注:此操作目的是把本地仓库push到gitee上面,如果没有使用密钥此步骤需要你输入帐号和密码)
    

    这样就备份完博客了且在Gitee上能看到

    image-20210220113951870

    其中node_modules、public、db.json已经被忽略掉了,没有关系,不需要上传的,因为在别的电脑上需要重新输入命令安装

    个人备份习惯

    hexo c
    git add .
    git commit -m "Backup"
    git push
    hexo g
    hexo d
    

    恢复博客

    目前假设本地Hexo博客基础环境已经搭好:比如安装git
    、nodejs、hexo安装...

    克隆项目到本地

    输入下列命令克隆博客必须文件

    git clone https://gitee.com/muzihuaner/hexo.git
    //https://gitee.com/muzihuaner/hexo.git换成你的
    

    恢复博客

    在clone下来的那个文件夹里面执行

    npm install hexo-cli
    npm install
    npm install hexo-deployer-git
    

    在此不需要执行hexo init这条指令,因为不是从零搭建起新博客。

    然后就完成了,你如果想也可以

    hexo clean
    hexo g
    hexo d
    

    是不是很简单呢?

  • 相关阅读:
    TextField KeyUp事件
    extjs 弹出windowsurl
    coolite TreePanel CheckBox联动
    自动生成储存过程及.net代码(sql2000,sql2005,sql2008)
    ComboBox三级关联
    ext window关闭
    DLL编写教程
    阿里云笔试题
    c/c++复杂声明的理解
    malloc/free与new/delete的区别
  • 原文地址:https://www.cnblogs.com/HGNET/p/14420130.html
Copyright © 2020-2023  润新知