0%

关于Hexo博客内容迁移的备忘录

最近我那台在2016年买的惠普笔记本电脑在各种科研任务的加持下,终于卡的让我不能忍受。奈何在我钱包的不支持下,选择了格式化电脑并重装系统的道路。其中就伴随这各种文件的备份,其中,我的博客本地内容迁移就成了一件头疼的事。以前,虽然也重装过这台电脑,也重新备份过该博客的本地内容,但并没有留下相关的方法笔记,网上资料确实不少,但有些确实写的繁琐,随写本内容,为给自己留一个操作流程的备忘录,当然也希望这部分内容可以帮助有遇到同样问题的人。

原始数据的备份

网上有不上通过直接clone仓库的方案,但对于个人仓库大概率是有目的的进行迁移,因此通常还会保留原始的本地文件夹及内容。

所以,对于原始数据的备份,这边选择直接copy旧电脑的文件夹到新的U盘或者云上。为了提高传输效率建议压缩后进行传输。

原始数据的迁移

将U盘或者云上的数据拷贝到新电脑的目标文件夹,为了安装不报错建议将node_modules文件夹删除。

movefile

自己测试了一下,也可以不删除这个文件夹。

软件及环境的准备

git软件的准备

软件的下载:https://git-scm.com/downloads

建议下载最新版本,在安装的过程中,除安装位置视个人情况更改,其他默认即可。

Node软件的准备

软件的下载:https://nodejs.org/en/download/prebuilt-installer

建议下载最新版本,在安装的过程中,除安装位置视个人情况更改,其他默认即可。(Node版本低可能会导致报错)

环境的准备

对于git,网上有教程说需要进行git的系统变量配置。一般来说,根据默认安装git已经被写入系统的环境变量中,因此这一步没太有必要,如果不放心,可以自行百度如何将git添加到系统变量的PATH中。

gitbash设置用户

在备份了本地内容的目标文件夹中右击鼠标,可以见到Open Git Bash here的选项,选中并单击即可打开gitbash。

先设置用户名:

1
git config --global user.name "your name"

your name建议根据github仓库设置。

再设置邮箱:

1
git config --global user.name "your email"

your email建议根据github仓库设置。

SSH的配置

使用~/.ssh或者~/.ssh ls查看电脑是否有.ssh文件夹。

  • 如果有的话,就会显示bash: /c/Users/…/.ssh: Is a directory
  • 如果没有的话,便会显示bash: /c/Users/…/.ssh: No such file or directory

这里的Users为电脑的用户名。

如果没有.ssh文件夹,在gitbash中输入ssh-keygen -t rsa -C "your email"

剩下的回车即可,直至结束。

当看到如下内容后,说明设置成功。

1
2
Your identification has been saved in /c/Users/…/.ssh/id_rsa
Your public key has been saved in /c/Users/…/.ssh/id_rsa.pub

同时他也会展示他的密钥内容。

将密钥添加到Github

打开github并登录到自己的页面,点击右上角自己的头像,进入Settings页面。

setting

在settings中选择SSH and GPG keys,并点击New SSH key,进入如下页面。

ssh

Title部分可以根据自己喜好输入内容,这边以为仓库名为例。

Key部分可以在C:\Users\…\.ssh中的id_rsa.pub文件中获取,使用记事本打卡即可查看其中的内容,全部复制后,粘贴到此处的Key中。

这两部分设置完后,点击Add SSH key,同时也会email中收到SSH key添加成功的邮件。

在gitbash中输入ssh -T git@github.com,如果显示Hi “your name”! You’ve successfully authenticated, but GitHub does not provide shell access.,说明成功设置密钥,并建立连接。

hexo的准备

输入npm install hexo-cli -g安装hexo。

执行完上面的命令后,输入npm install安装依赖,执行完后,会产生一个node_modules的文件夹。

如果在迁移的时候没有删除node_modules,就可以不用执行npm install安装依赖。

最后

通过上面的操作,这个时候就可以使用hexo cleanhexo ghexo d等来测试是否迁移并配置成功。如果一切顺利,那就祝你 Have a good day 。

资料参考:
[1] 换电脑后怎么迁移hexo博客?
[2] Git教程 SSH keys配置