Lazy loaded image
Hexo-备忘
字数 5699阅读时长 15 分钟
2025-8-20
2025-8-20
温馨提醒
这篇文章发布于 109 天前,内容可能已过时,请谨慎参考。
type
status
date
slug
summary
tags
category
icon
password

Hexo 备忘

我的配置

  1. Hexo 版本: hexo-cli: 4.3.2, hexo: 7.3.0(当前最新)
  1. Node.js 版本: 22.16.0
  1. Git 版本: 2.47.0.sindows.2
  1. PNPM 版本: 10.12.4
  1. Windows 版本: 11

安装 Node.js

  1. 官网 安装 LTS 版本,电脑一般来说内存足够直接在 C 盘即可,当然,换路径也可以,我反正正常下载换路径,没什么问题。
  1. 安装完成后,检查是否安装成功。在键盘按下 win + R 键,输入 CMD,然后回车,打开 CMD 窗口,执行 node -v 命令,看到版本信息,则说明安装成功。

安装 Git

官网 安装最新版本的 64-bit Git for Windows Setup 安装包。
安装完成后,在命令行输入 git --version,如果显示版本号,则说明安装成功。

常用命令

配置 Git 用户名和邮箱

安装 包管理器

安装 npm 为一切的基石,一般来说,你安装了 node,也相当于你安装了 npm,通过一下命令来验证:
修改 npm 源。npm 下载各种模块,默认是从国外服务器下载,速度较慢,建议配置成淘宝镜像。打开 CMD 窗口,运行如下命令:

安装 pnpm

pnpm 是一个快速、节省磁盘空间的包管理器,类似于 npm 和 yarn。安装 pnpm 可以通过以下命令:
为什么选择 pnpm?因为它的安装速度快,依赖管理更高效,且相对于 npm,我使用 npm 容易失败且慢,pnpm 给我的体验更好。

安装 Hexo

  1. 在 Git BASH 输入如下命令安装 Hexo:
  1. 安装完后输入 hexo -v 验证是否安装成功。

Github配置

上述操作是前提,接下来是配置 Github。
注册 github 就不说了,很基础的东西,连我个代码小白都懂就不多说了。 ### 创建仓库 1. 登录 GitHub,点击右上角的 + 号,选择 New repository。 2. 填写仓库名称,建议使用 <username>.github.io 格式(例如:yourusername.github.io),这样可以直接作为个人主页。
这里我不准备直接使用常规的 hexo deploy 命令来部署到 GitHub Pages,因为当你的文章一多,生成时间就会繁琐,这里的建议是使用 Github Actions 来自动部署。
这一部分的教程是源于 店长的文章,但是有点老旧了,于是我做了点更改(这里的图片来源于 安知鱼):
  1. 首先要创建一个放置源码的私有仓库,以下称之为 hexo-source
  1. 然后要生成一个 Github 密钥:
访问 Github-> 头像(右上角)-> Settings-> Developer Settings-> Personal access tokens-> generate new token, 创建的 Token 名称随意,但必须勾选 repo 项 和 workflows 项。
点击 链接 前往生成
notion image
notion image
[!NOTE]
!!! token 只会显示这一次,之后将无法查看,所以务必保证你已经记录下了 Token。之后如果忘记了就只能重新生成重新配置了。
  1. hexo-source 仓库中的设置里点击设置 -> action -> General -> 工作流程权限
      • 勾选 Read and write permissions,并且勾选 Allow <span style="background:#FF0000;"></span>all actions and reusable workflows
  1. 在设置里 -> Secrets and variables -> Actions -> New repository secret 添加
  • GITHUBTOKEN:放置你刚才生成的 Token。

上述是前置条件,接下来要先部署 hexo,你才好继续下一步。

初始化 Hexo

  1. 在本地新建一个文件夹,例如 hexo-solitude
  1. 这里我是用的是 vscode 打开该文件夹,然后在终端输入以下命令来初始化 Hexo:
我一般都不填,直接在文件下下就可以开始,如果你添加了项目名称,那么下一步就是:
  1. 安装依赖包:
然后就是选择你想要的主题,这里我使用的是Solitude,具体的配置不细讲,我只讲一部分:
首先就是基本的安装,这里还是选择git clone没有别的原因,主要还是会改点源码,不想改的直接pnpm下载即可:
然后在_config.yml里修改成:

配置

下列代码是我的备忘:
博客的其他修改基本就是来自教程和一些博主的网站。

插件

  1. 基础依赖 hexo-renderer-pug

  1. 字数统计 hexo-wordcount
配置里修改:

  1. 数学公式 卸载 hexo-render-marked
安装 hexo-renderer-markdown-it katex @renbaoshuo/markdown-it-katex
配置里修改
添加以下内容到 _config.yml
开启配置项

  1. PWA 安装 hexo-swpp 和 swpp-backends 插件
在博客根目录执行
开启配置
_config.yml里添加swpp配置
source 目录中创建 manifest.json 文件
在博客根目录创建一个 sw-rules.js 文件

  1. hexo-deploy-git 提交到git的插件

  1. hexo-generator-feed hexo的rss插件

  1. hexo 的短链接: hexo-abbrlink
_config.yml里修改:
添加:

  1. 博客的sitemap : hexo-generator-sitemap
_config.yml里添加配置:

  1. 使用algolia搜索 : hexo-algoliasearch
  • 注册algolia:
  • 创建应用:
  • search -> configure -> index添加index_name即可
在博客执行命令:
_config.yml里添加
 
!!!配置完成后记得运行 hexo clean
hexo g后实行下列代码:

  1. hexo-safego安全跳转插件
使用该插件之前,需要先安装 cheeriocheerio 是一个轻量级的库,用于在服务器端快速、灵活地实现 jQuery 核心功能。在 hexo-safego 插件中,cheerio 被用来解析和操作生成的静态 HTML 内容,类似于在浏览器中使用 jQuery 处理 DOM 元素。这使得插件能够在生成静态页面时,处理和替换外部链接,增强博客的安全性,而不需要在客户端引入 jQuery。Hexo 一般都有这个插件,可以在 node_modules 查看,如果没有,请先执行:
然后即可安装该插件:
hexo根目录的_config.yml文件中添加以下配置:
  1. hexo的追番页面hexo-bilibili-bangumi
_config.yml配置:
还在更新中。。。

Github action配置

承接段落的继续吧,未来会在水一期。
接下来就是创建一个私有仓库,根据大佬的文章,是为了保护Token,见仁见智。
这个私有仓库的建立是存储Hexo博客代码,如果你要使用Qexo
,这也是必不可少的!
notion image
创建完成后,需要把博客的源码 push 到这里。首先获取远程仓库地址,此处虽然 SSH 和 HTTPS 均可。SSH 在绑定过 ssh key 的设备上无需再输入密码,HTTPS 则需要输入密码,但是 SSH 偶尔会遇到端口占用的情况。请自主选择。
notion image
这里之所以是私有仓库,是因为在接下来的配置中会用到 Token,如果 Token 被盗用,别人可以肆意操作你的 github 仓库内容,为了避免这一风险,才选择的博客源码闭源。

配置 Github Action

  1. [Blogroot]新建.github文件夹,注意开头是有个.的。然后在.github 内新建 workflows 文件夹,再在 workflows 文件夹内新建 autodeploy.yml,在[Blogroot]/.github/workflows/autodeploy.yml 里面输入
上述代码是来自店长的修改自用,为什么不用安知鱼的?
  1. 首先把Token直接放在仓库的文件里还是不太好。
  1. 像我这种在本地搞的,推不到仓库里,因为这里的token不能直接上传,我尝试过把token:改成token: ${{ servets.GH_token }},但是依旧有各种问题,相反使用了店长的代码后,就大差不差,询问AI后就得到目前的代码,也就可以正式上传了。(无拉踩的意思)
  1. 之后需要自己到仓库的 Settings->Secrets->actions 下添加环境变量,变量名参考脚本中出现的,依次添加。
notion image

重新设置远程仓库和分支

🍼第一次使用git管理博客源码
  1. 删除或者先把[Blogroot]/themes/solitude/.git移动到非博客文件夹目录下,原因是主题文件夹下的.git文件夹的存在会导致其被识别成子项目,从而无法被上传到源码仓库。
  1. 在博客根目录[Blogroot]路径下运行指令:
    1. 添加屏蔽项
    2. 如果不是solitude主题,记得替换最后一行内容为你自己当前使用的主题。
    3. 之后再运行 git 提交指令,将博客源码提交到 github 上。
    4. 此时你的主题文件夹若已经被正常上传,并且你也添加了主题文件夹下的.git 文件夹的屏蔽项。那你可以考虑把第二步移走或删除的.git放回来,用作以后升级。(不禁怀疑真的有人会去用这个方式来升级吗)
🍾曾经做过git管理源码的操作
  1. 添加屏蔽项
因为能够使用指令进行安装的内容不包括在需要提交的源码内,所有我们需要将这些内容添加到屏蔽项,表示不上传到 github 上。这样可以显著减少需要提交的文件量和加快提交速度。
如果不是solitude主题,记得替换最后一行内容为你自己当前使用的主题。
  1. 提交源码到私有仓库[SourceRepo]
在博客根目录[Blogroot]下启动终端,使用 git 指令重设仓库地址。这样在新建仓库,我们仍旧可以保留珍贵的 commit history,便于版本回滚。
  1. 可能遇到的 bug
因为 solitude 主题文件夹下的.git 文件夹的存在,那么主题文件夹会被识别子项目。从而无法被上传到源码仓库。若是遇到添加屏蔽项,但是还是无法正常上传主题文件夹的情况。请先将本地源码中的 themes 文件夹移动到别的目录下。然后 commit 一次。接着将 themes 文件夹移动回来,再 commit 一次
要是还不行,那就删了 solitude 主题文件夹下的.git 文件夹,然后再重复上述的 commit 操作。

挖坑

大致写到这,未来或许会有下一章挖坑?但是目前通用的就到这,然后后续会写Qexo的简单使用方法、solitude的一些配置更改和我踩坑经历吧。
 
上一篇
Markdown 速览表
下一篇
Markdown 强调语法

评论
Loading...