hexo+github+zeabur博客部署方案&git项目管理

方案流程大概介绍

​ 使用hexo开源框架进行部署,从github仓库下载hexo源代码,使用gitbash工具在源码文件夹下打开,进行调试等工作后,在本地运行查看效果是否满意。

​ 从腾讯云购买符合自己喜欢的域名,推荐买.cn结尾的域名,价格较为合适,并将其解析到我们的服务器。

​ 服务器使用第三方CI服务zeabur平台,该平台可以实时从在线的githubio仓库中识别网站版本更新及其代码,省去我们手动将其再部署到服务器上的过程。

hexo本地运行。

​ 在调试、下载源代码之前,我们需要先行下载如下软件与环境:

​ 安装git:https://soft.aijiaer11.cn/soft/124420.html?bd_vid=10376755935823706615

​ 安装node.js:https://nodejs.org/zh-cn

​ 其中,node.js在安装时要选择ADD TO PATH默认选项,这样就不用再单独配置全局变量了。

​ 除此之外,还需要提前注册好属于自己的github账号,并提前创建仓库用来存放我们deploy的项目,仓库名为自己的git账号名。例如:你的名字.github.io。之后,进入git账号的developer-settings,创建token。

​ 配置环境完成后,我们登录hexo网站,跳转github后下载源码.zip文件至文件夹。点击空白处,选择用gitbash打开。接下来,我们需要对gitbash的账户进行设置:

1
2
3
4
`git config --global user.name "github上注册的用户名" # 配置用户名`
`git config --global user.email "github上注册的邮箱" # 配置用户邮箱`
`git config --global user.name # 查看配置的用户名`
`git config --global user.email # 查看配置的用户邮箱`

由于github登录需要科学上网,所以我们还需要配置gitbash的网络

1
2
`git config --global --unset http.proxy#取消代理`
`git config --global --unset https.proxy#取消代理`

这里我用的是clash,使用的网络端口是127.0.0.1:7890,clash使用的端口都是127.0.0.1:port,我们输入如下两条指令:(自己使用时请使用自己的clash端口)

1
2
git config --global http.proxy http://127.0.0.1:7890
git config --global https.proxy https://127.0.0.1:7890

在默认情况下,右键blog文件夹,依次输入如下命令:

1
2
3
4
hexo cl#清理生成文件
hexo g#生成项目
hexo s#本地运行
hexo d#将项目deploy至你设置好的仓库中,提前开启VPN

输入命令hexo d前,我们还需要进入文件夹中,修改_config.yml文件,在文件末端,完善以下deploy相关配置:

1
2
3
4
deploy:
type: 'git'
repo: #你的仓库链接
branch: main #仓库分支,注意区分main和master

可以查看自己的环境是否配置成功

关于博客个性化以及新增页面,发布博客的内容,网上有很多教学,自行查阅,附几条链接:

1
2
3
https://hexo.io/zh-cn/ #官方查看内容
https://blog.csdn.net/mjh1667002013/article/details/129290903 #butterfly主题美化
https://butterfly.zhheo.com/create.html #butterfly官方主题

域名解析与服务器网络测试

​ 我们登录腾讯云后,首先进行实名验证,进入到控制台页面即可看到自己购买的域名。我们点击解析,通过zeabur给定的cname等信息将网址解析到zeabur的服务器上,zeabur服务器新建后,你可以通过新建项目,并同时登陆你的github,选择你新建的io库即可,此时,你本地运行的代码通过gitbash已经deploy到git仓库中去,因此,你可以在github中看到其更新,zeabur会实时重新帮您部署这一版网站。

网站迭代更新

常用:

1
2
3
4
hexo cl#清理生成文件,每次修改后重新本地查看时,一定要clean
hexo g#生成项目
hexo s#本地运行
hexo d#将项目deploy至你设置好的仓库中,提前开启VPN

新建页面:

1
2
hexo new page about#创建”关于我“新页面
#创建页面后会在source文件夹中创建文件夹,其中会有一个index.md文件,修改页面配置。一些特殊页面还需要特殊配置,如link还需要在source中创建_data

文章添加图片:

1
2
3
_config.yml:post_asset_folder: true
安装插件:npm install https://github.com/CodeFalling/hexo-asset-image -- save在/source/_posts目录下新建XXXXXX的文件夹将图片放入其中
![](XXXXXX/1.png)即可

文章支持公式渲染:

1
2
3
4
5
6
7
8
9
npm uninstall hexo-renderer-marked --save
npm install hexo-renderer-kramed --save//卸载并安装kramed渲染引擎
解决语义冲突问题:
escape: /^\\([`*\[\]()#$+\-.!_>])/, //node_modules\kramed\lib\rules\inline.js中修改第11行
em: /^\*((?:\*\*|[\s\S])+?)\*(?!\*)/, //修改第20行
在主题中开启mathjax开关
在文章的Front-matter里打开mathjax开关
公式块文章换行问题:
在每个公式块加上\begin{align}\end{align}

git bash 将项目上传至仓库

基本流程:

1
2
3
4
5
6
git init#创建新文件夹作为仓库,并将项目复制进来,使用初始化命令将其变成git仓库
git add .#将项目添加到仓库
git commit -m "注释"#将项目提交至仓库
ssh-keygen -t rsa -C "youemail@163.com"#配置SSH密钥并添加至库中
git remote add origin YOURURL#将本地仓库与git关联
git push -u origin master#若远程仓库中不是空的,那么则去掉-u

一些bug:

1
2
git remote rm origin
git remote add origin newurl#出现已经建立remote链接,但是自己又想改成另一个仓库时
1
#记得也要提前配置好自己的git账号和name