Hexo 博客部署指北
今天尝试部署 Hexo 博客,发现确实是十分的简明快捷,以后要多加使用
这次的部署过程中遇到了以下几个问题:
1. 无法上传到 Github
部署 Hexo 时,使用教程中说的 repository:
1
https://github.com/andybroker/andybroker.github.io.git
无法正确上传,后来用了
1
git@github.com:andybroker/andybroker.github.io.git
才正确,应该是直接使用 ssh 进行上传,故没有写账号密码的过程
2. 配置文件时语言选项
中文的选项不是 zh-Hans
,而应该是 zh-CN
,关于其他的一些语言可以在 themes 中看到,其他的一些配置也可以在 themes 里对应的主题的配置文件 _config.yml
中进行配置,languages 文件夹内容如下所示:
3. Hexo 修改主题
需要把主题先下载下来再进行配置使用
4. Hexo 的配置文件
其中的参数需要在冒号后空一格,不能直接连接冒号
5. 更换电脑时的操作(现在已经使用 Github 进行版本控制,外加使用 Github Action 进行自动发布,所以这个可以忽略了)
安装 Node.js
检查是否安装 brew
1
brew -v
安装 homebrew:
1
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装 node:(如果之前已经手动安装过 node,再次通过 homebrew 安装往往产生冲突,可以先删除,如果是通过 homebrew 安装的,下发命令
brew uninstall node
即可,如果是通过安装包安装的,手动删除 node 的安装文件即可)1
2
3brew link node
brew uninstall node
brew install node检查是否安装 node:
1
2node -v
npm -v注意:安装 cnpm(npm 由于源服务器在国外,下载 node 包速度较慢,cnpm 使用国内镜像,下载速度较快):
1
npm install -g cnpm --registry=https://registry.npm.taobao.org
安装 hexo:
1
npm i -g hexo
把博客文件从 git 上拉下来,或者用 iCloud 中的,基本上只要在 Mac 上更新博客,都可以直接用 iCloud 文稿中的文件,但是如果要更新 git 上的文件,就要先拉到本地,用 iCloud 的将其覆盖,再推到远端
遇到的一些问题
Hexo 使用了 Fluid 皮肤后,hexo g 关于高亮报错
1 |
|
这是因为在你的博客中,在用代码段时没有指明语言,可以把部分文章移出文件夹,逐渐找出是哪一篇的代码段没有指明语言,处理后再移回来
Hexo 升级问题
最近在整理自己的博客,看到 Hexo 版本是 3.9.0,最新已经去到 6.0.0 了,而我所使用的主题 Fluid 的相关配置在新版本 Hexo 上将会更加方便简洁,所以决定升级一波
按照 Google 得来的升级步骤,先执行如下指令
1 |
|
输入 hexo version
查看版本,哦豁,还是 3.9.0,看来应该是只升级了 hexo-cli,并没有正确升级 Hexo,于是再次进行搜索,得到如下的步骤
先安装 npm-check
和 npm-upgrade
1 |
|
安装完后,执行 npm-check 即可检查本地各插件版本情况
执行 npm-upgrade
可根据当前版本和最新版本比较,让用户确认和选择是否升级
若用户确认升级,则会自动把 package-lock.json 和 package.json 文件内容进行更新后保存,然后执行:
1 |
|
上述命令执行完毕,则所有通过 npm-upgrade
确认的插件全部都升级到最新(包括 Hexo)
稍等片刻后,出现了一堆日志,诸如改变了多少个 package 之类的,应该是报告出错了,同时贴心地附上处理的指令 npm audit fix
,这时查看一下 Hexo 版本,仍然没有变化,还是 3.9.0,看来的确是出现问题了,那就输入 npm audit fix
试试看,又稍等片刻后通过 hexo version
验证 Hexo 版本,已经更新到最新的 6.0.0 了
如果还遇到另外的问题,可以参考原文,另附查看 Node.js 版本的指令: node -v
Node 快速切换版本、版本回退(降级)、版本更新(升级)
最近遇到一些 node 的坑,对旧版博客皮肤不太满意,所以更换了现在的 fluid,之后发布的时候报错,一查发现是 node 版本过高了,需要回退到比较稳定的版本,这时可以借助 node 版本管理模块 n 来解决这个问题
1 |
|
不断使用和尝试中,如果有新的坑会继续补充
- 从零搭建 hexo 参考文章,这个博主也是使用 hexo 的,可以多多参考
- Hexo 主题网站