Hexo博客备份:如何通过github分支,实现多终端多点维护博客

Hexo博客备份:如何通过github分支,实现多终端多点维护博客
乐活星球导读
本文详细介绍了如何通过github分支,实现多终端多点维护博客,让你不管在何地都可以轻松管理自己的博客!文章末尾有彩蛋,请多多支持博主!
1.删除git文件夹
进入themes
文件夹下,将anzhiyu
文件夹下的.git
文件夹删除掉,如果未找到该文件夹,可能是被隐藏了,请点击查看显示隐藏的项目,将其删除,否则后面无法进行备份。
2. 创建分支
在已经同步成功博客的Github上面创建一个新的分支,例如:hexo,再将hexo设置为主要分支。
3. 初始化分支
3.1. 拉取仓库文件
在Hexo的根目录下通过以下命令,将仓库文件拉取到本地,生成的文件名为username.github.io
;
1 | git clone <SSH仓库地址> |
3.2. 删除.git以外文件
进入username.github.io
文件夹内,将除.git
文件夹以外的其他文件全部删除;
3.3. 将修改提交至暂存区
在username.github.io
文件夹下通过以下命令,将修改提交至暂存区;
1 | git add . |
3.4. 提交本次修改
继续通过通过以下命令,添加提交说明(提交说明可自己命名,本文以backup为例),提交本次修改;
1 | git commit -m “backup” |
3.5. 推送至hexo分支
继续通过以下命令,将本次修改推送到github远端hexo分支;
1 | git push origin hexo |
3.6. 拷贝.git文件夹
完成以上操作后,将刚才未删除的.git
文件夹拷贝至博客根目录,删除username.github.io
文件夹,此时本地的Hexo目录已与github上的hexo文件夹关联;
3.7. 推送至hexo分支
在Hexo根目录,再次通过以下三个命令将当前的文件推送至远程的hexo分支
1 | git add . |
1 | git commit -m “backup” |
1 | git push origin hexo |
执行完成后,在github上会发现,hexo分支已经成功接收本地博客主文件的推送,切换到main分支,是每次博客发布的静态html文件。
4. 新增终端进行博客维护
4.1. 环境准备:
安装Node.js
和Git
,配置Git
与GitHub
,并设置SSH密钥,保证连接成功;
4.2. 创建博客文件夹
创建博客文件夹,在文件夹下面还行以下操作:
- 通过以下命令,克隆hexo分支备份
1
git clone <ssh连接地址>
- 在clone下来的仓库文件夹中安装和配置hexo环境,依次使用以下命令:
1
npm install hexo
1
npm install
1
npm install hexo-deployer-git
- 此时在
Git Bash
中通过命令hexo cl; hexo g;hexo s
,即可在本地开启同步下来的博客静态页面,并通过 http://localhost:4000/ 访问。如果此环节通过命令hexo cl; hexo g;hexo s
出现以下错误:请通过此命令npm install hexo-cli -g
重新全局安装Hexo,然后在通过命令hexo -v
验证安装最后在通过命令hexo cl; hexo g;hexo s
,即可成功在本地开启同步下来的博客静态页面,并通过 http://localhost:4000/ 访问了。
注意:
如果在Visual Studio Code
中通过命令hexo cl; hexo g;hexo s
在本地预览,可能会报如下错误:
这是因为你的PC的 PowerShell 脚本执行策略阻止了脚本的运行。你可以通过更改执行策略来解决这个问题。以下是步骤:
(1) 以管理员身份运行 PowerShell:
在 Windows 搜索栏中输入 “PowerShell”,然后以管理员身份运行“Windows PowerShell” 。
(2) 通过以下命令更改执行策略:
- 查看当前执行策略:
1
Get-ExecutionPolicy -List
- 更改执行策略:将执行策略设置为 RemoteSigned,这样本地生成的脚本可以运行,而从网络下载的脚本需要签名。
1
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
- 确认更改:再次运行以下命令以确认执行策略已更改
1
Get-ExecutionPolicy -List
5. 多终端维护注意事项
后续不管是哪个终端,如果修改了配置文件或者新增了博文,都要按照以下步骤操作:
5.1. 使用以下命令从仓库拉取代码并自动合并本地
1 | git pull origin hexo |
5.2. 暂存修改文件;
1 | git add . |
5.3. 提交修改
1 | git commit -m “backup” |
5.4. 将新增博文原文件推送至hexo分支
1 | git push origin hexo |
5.5. 将博文静态页面发布至maser分支
1 | hexo g -d |
- 通过以下命令执行
pull.sh文件
,以确保本地代码是最新且与服务端一致1
./pull.sh
- 通过以下命令执行
pushsh.sh文件
,将本地更新推送服务端进行备份和发布。1
./push.sh