hexo备份

TO DO

要换电脑了,博客却不知道怎么转移?平时不太放心源码,怕电脑出故障,把源码丢失怎么办?没有关系,让我们把源码保存至Gitee

    首先在Github创建一个新仓库,创建的时候一定要选择private,不过忘记了也无所谓,在仓库的settings界面也可以设置,仓库名字随便取,路径不用管。本篇文章就取名为hexo-blog-source

    接下来,在博客根目录创建一个.gitignore文件,用来屏蔽一些不用上传的文件夹或文件。

有些文件或文件夹在hexo init的时候就已经写进去了,所以我们只需要把我们自己的文件加进去即可。

1
2
3
4
5
6
7
8
9
.vscode/
node_modules/
public/
themes/anzhiyu/.git/

.deploy_git
.gitignore
db.json
deploy.sh

    这样的话,上传上来的就基本上是源码了。后期再用的话,只需要git clone拉下来,然后在这个目录里面右键Git bash here,然后再npm i,这时则会根据目录的package.json自动安装node_modules

    点击创建,然后视线转到如下界面,这就是我们接下来要操作的了:

    在博客根目录右键Git bash here,然后分别输入以下指令(我们并不需要readme.md):

1
2
3
4
5
6
git init
git add .
git commit -m "first commit"
git remote add origin https://github.com/ciraos/hexo-blog-source.git
git branch -M main
git push -u origin "main"

    一系列操作以后,你的Github仓库就应该有源码了。

一定要将源码仓库设置成私有。不然,等你以后上百度查资料,发现别人的域名挂着你的东西,也就只能干瞪眼了。

Q&A

    问题来了,themes文件夹下的主题也有.git文件夹,也就说明它也是一个仓库。也就是当在你执行push源码的时候,会再push一个仓库,这样的话,两个.git文件夹就会冲突,bash报错。

  • 第一种方法

    此时可以通过删除主题文件夹下的.git文件夹,或者将主题文件夹下的.git文件夹写进.gitignore
如果你的themes文件夹有主题的话,先将主题文件夹下的.git的相对路径添加至.gitignore里面。
例如:/themes/anzhiyu/.git。(不知道这样安不安全~~qwq)

  • 第二种方法

    可以通过添加submodules的方法(不过这种方法我现在还不太会)。

Answers from Bing

  • 第三种方法(最笨的方法)

    把博客源码/themes/anzhiyu主题下的.git文件夹删除,然后再在别的地方重新git clone一个新的带.git的主题文件夹,然后把这个文件夹除了.git文件夹全部复制到博客源码的/themes/anzhiyu文件夹下。