如何在新电脑上更新hexo博客,具体操作流程

如何在新电脑上更新hexo博客,具体操作流程
BSDAN换了新电脑后继续更新 Hexo 博客,核心是恢复源文件和环境配置。以下是两种高效方法,根据你的旧电脑文件备份情况选择:
一、源文件直接拷贝法(适合已备份旧电脑源文件)
1. 安装基础环境
1 | git --version |
2. 配置 GitHub 新电脑 SSH 密钥
从官网Git下载git,在新电脑上安装,因为https速度慢,而且每次都要输入口令,常用的是使用ssh。使用下面方法创建:
生成密钥:
打开git bash,在用户主目录下运行:ssh-keygen -t rsa -C “[email protected]“ 把其中的邮件地址换成自己的邮件地址,然后一路回车1
ssh-keygen -t rsa -C "[email protected]"
最后完成后,会在用户主目录(C:\Users\Administrator.ssh)下生成.ssh目录,里面有
id_rsa和id_rsa.pub两个文件,这两个就是SSH key密钥对,id_rsa是私钥,千万不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。登陆GitHub,打开「Settings」->「SSH and GPG keys」,然后点击「new SSH key」,填上任意Title,在Key文本框里粘贴公钥id_rsa.pub文件的内容(千万不要粘贴成私钥了!),最后点击「Add SSH Key」,你就应该看到已经添加的Key。
测试连接:
1 | ssh -T [email protected] # 输入 yes 确认 |
显示Hi xxx! You've successfully...即成功
注意:不要在git版本库中运行ssh,然后又将它提交,这样就把密码泄露出去了。
3. 拷贝旧电脑的 Hexo 源文件
将旧电脑中博客目录下的必要文件复制到新电脑(如 D:/Blog):
_config.yml(站点配置)
package.json(插件列表)
scaffolds/(文章模板)
source/(文章和资源)
themes/(主题文件)
注意:无需复制 node_modules/、public/ 等自动生成目录。
下面就将原来的文件拷贝到新电脑中,但是要注意哪些文件是必须的,哪些文件是可以删除的。
讨论下哪些文件是必须拷贝的:
首先是之前自己修改的文件,像站点配置_config.yml,theme文件夹里面的主题,以及source里面自己写的博客文件,这些肯定要拷贝的。除此之外,还有三个文件需要有,就是scaffolds文件夹(文章的模板)、package.json(说明使用哪些包)和.gitignore(限定在提交的时候哪些文件可以忽略)。其实,这三个文件不是我们修改的,所以即使丢失了,也没有关系,我们可以建立一个新的文件夹,然后在里面执行hexo init,就会生成这三个文件,我们只需要将它们拷贝过来使用即可。总结:_config.yml,theme/,source/,scaffolds/,package.json,.gitignore,是需要拷贝的。再讨论下哪些文件是不必拷贝的,或者说可以删除的:
首先是.git文件,无论是在站点根目录下, 还是主题目录下的.git文件,都可以删掉。然后是文件夹node_modules(在用npm install会重新生成),public(这个在用hexo g时会重新生成),.deploy_git文件夹(在使用hexo d时也会重新生成),db.json文件。其实上面这些文件也就是.gitignore文件里面记载的可以忽略的内容。总结:.git/,node_modules/,public/,.deploy_git/,db.json文件需要删除。
4. 安装 Hexo 及依赖
- 全局安装 Hexo:
打开git bash客户端,输入npm install hexo-cli -g,开始安装hexo
1 | npm install hexo-cli -g |
- 进入博客目录安装依赖:
1 | cd D:/Blog |
在git bash中切换目录到新拷贝的文件夹里,使用
npm install命令,进行模块安装。很明显我们这里没用
hexo init初始化,因为有的文件我们已经拷贝生成过来了,所以不必用hexo init去整体初始化,如果不慎在此时用了hexo init,则站点的配置文件_config.yml里面内容会被清空使用默认值,所以这一步一定要慎重,不要用hexo init。安装其他的一些必要组件,如果在
node_modules里面有的,就不要重复安装了:
(1)为了使用hexo d来部署到git上,需要安装npm install hexo-deployer-git --save
1 | npm install hexo-deployer-git --save |
(2)为了建立RSS订阅,需要安装npm install hexo-generator-feed --save
1 | npm install hexo-generator-feed --save |
(3)为了建立站点地图,需要安装npm install hexo-generator-sitemap --save
1
npm install hexo-generator-sitemap --save
插件安装后,有的需要对配置文件_config.yml进行配置,具体怎么配置,可以参考上面插件在github主页上的具体说明
5. 测试与部署
- 启动本地服务器:
在(本地预览)一下,浏览器访问 http://localhost:4000 查看博客:
1 | hexo cl; hexo s |
- 生成并部署:
使用hexo g,然后使用hexo d进行部署,如果都没有出错,就转移成功了!(推送命令)
1 | hexo cl; hexo g; hexo d |
或
1 | hexo clean # 清除缓存(可选) |
二、Git 分支管理法(适合长期多设备同步)
Hexo官方迁移文档主要讲的是如何迁移到别的博客平台,这里考虑的是换电脑的问题。
最好是在创建博客的时候就想到这个问题,但是一般搭建博客的人都是小白,考虑不周是再所难免的,所以有了以下的解决方案
如果熟悉git命令的就会容易理解很多,所以建议有时间学习一下git命令行。
解决这个问题之前要明白一件事情:上传到github上的文件是经过Hexo生成的。
解决方案:在现有的项目xxx.github.io 的基础上新建一个新的分支,将博客资源文件(源文件)放到这个新分支上,其他的不动即可。
主要有两大步:
- 1.将本地文件存到github,
- 2.用新电脑拉取项目文件,使用Hexo重新进行生成、部署。
1.将本地文件存到github
具体步骤:
- 克隆gitHub上的XXX.github.io项目的文件到本地(注意替换成你自己的项目地址)
1 | git clone https://github.com/yourname/xxx.github.io.git |
- 删除文件夹里除了.git的其他所有文件(这个文件是隐藏文件,如果看不到,要设置一下,具体百度)
- 将原Hexo项目文件夹中的文件全部复制到这个文件夹中
- 确认一下里面是否有一个文件.gitignore,如果没有就输入.gitignore 直接创建一个,然后粘贴如下内容,保存。
1 | .DS_Store |
创建一个叫hexo的分支并切换到这个分支上
git checkout -b hexo提交复制过来的文件到暂存区
git add –all提交,并添加注释
git commit -m “新建资源文件存放分支”推送分支到github(设置本地分支关联远程分支,下次直接用 git push命令就能直接推送)
git push –set-upstream origin hexo
到这一步我们推送文件基本搞定了,以后有更新,直接 git push就可以了,hexo的操作跟以前一样不变。
2.用新电脑拉取项目文件,使用Hexo重新进行生成、部署。
直接把创建的分支克隆下来,npm install安装依赖之后就可以用了。
- 安装依赖
npm install - 克隆gitHub上指定分支的内容到本地(注意:这条命令和最开始的命令是有区别的,看清楚)
1 | git clone -b hexo https://github.com/yourname/xxx.github.io.git |
ps:一点git命令的讲解
git push --set-upstream origin 将本地分支和远程分支进行关联
git push origin 分支名 推送内容到指定分支。
两条命令的作用基本相同,区别在于:关联之后,下次直接输入git push 就能直接提交,仅此。
git add --all和git add . 作用都是添加所有文件。
git remote -v 查看当前远程的版本
git pull origin 分支名 从指定分支上拉取最新变更
下面是简洁流程:
- 旧电脑前期准备(若未做需补)
在 GitHub 仓库创建分支(如 hexo),设为默认分支。
将源文件(不含 node_modules/、.deploy_git/)推送到该分支:
1 | git init |
- 新电脑操作
克隆仓库(默认拉取 hexo 分支):
1 | git clone [email protected]:你的用户名/仓库名.git |
安装依赖:
1 | cd 仓库名 |
写文章后同步:
1 | git add . |
⚠️ 关键注意事项
避免 hexo init
在已有源文件的目录执行会覆盖配置!8主题子模块问题
若主题包含 .git 目录,删除它否则克隆失败
1 | rm -rf themes/主题名/.git |
部署插件必装
缺少 hexo-deployer-git 会导致 hexo d 失败。大文件处理
图片等资源 >100MB 需用 Git LFS:
1 | git lfs install |
总结流程
✅环境安装(Git + Node.js) → 配置 SSH 密钥 → 恢复源文件 → 安装依赖 → 测试部署
✅优先推荐分支管理法,一劳永逸解决多设备同步问题。若源文件未提前备份,可尝试从旧硬盘/U盘拷贝必要目录(source/、themes/ 等),再结合方法一恢复










.webp)