hexo 博客的备份和迁移

原理

我们的博客是托管到 GitHub 上的. 而我们每次上传(hexo d)的是网页文件, 不是我们
的文章, 所以我们如果想上传文章, 但同时不会干扰到网页部署, 就在 GitHub 的博客仓
库上建立一个分支 hexo, 这个 hexo 分支的作用就是用来保存我的 MarkDown 文章, 站点
配置和一些其他文件.

这样hexo d推送的是 master 分支, 而git push推送的是 hexo 分支, 互不干扰.

建立一个中转站

建立一个文件夹, 名字随便, 我这里叫 hexo

git clone https://github.com/Witman1999/Witman1999

其实这里仅仅只是为了获得版本管理的.git隐藏文件夹.

建立分支

建立一个分支, 我这里分支名为 hexo

git checkout -b hexo

清空 hexo 分支

克隆下来的都是一些编译后的静态网页, 我们不需要. 删除除了.git文件夹的所有文件.

git add --all
git commit -m  "清空hexo分支仓库"
git push --set-upstream origin hexo

这里同时设置了以后默认为hexo分支, 回到博客的根目录下就能看到.

我们的博客的站点配置文件_config.yml的默认提交分支为 master.

deploy:
  type: git
  repo: https://github.com/Witman1999/Witman1999.github.io.git
  branch: master #提交的默认分支

移动文件

.git文件夹移动到博客的根目录下.

提交源文件

到了这一步有个注意点, 如果你的主题文件是克隆 Github 下来的, 那么会带有该主题的
版本管理文件, 也就是.git文件夹. 所以主题下面的要删除.git文件夹和
.gitignore文件, 否则会忽略这个 next 主题的上传.

.deploy_git是部署静态文章用的, 需要保留.

之后每次更新博客之后, push 源文件到hexo分支即可备份.


迁移后可能遇到的问题

node版本过高

重新安装低版本 node

.deploy_git异常

rm -rf .deploy_git
hexo g
hexo d

参考:

https://blog.csdn.net/qq_37391214/article/details/100186909


 上一篇
Git全局忽略.DS_Store文件 Git全局忽略.DS_Store文件
全局忽略.DS_Store编辑~/.gitignore_global, 添加: .DS_Store .DS_Store? *.DS_Store在~/.gitconfig中引入.gitignore_global文件 git config --
2020-06-11
下一篇 
Vim配置Python3开发环境 Vim配置Python3开发环境
检查 Vim 是否支持 Python3vim --version 输出包含 +python3表示支持,-python3则不支持 Vim 设置编辑~/.vimrc,没有则新建 set nocompatible "关闭与vi的兼容模式 set
2019-12-10
  目录