文档参考
安装 Hexo 和 NexT
1 |
|
配置 Hexo
- 修改项目根目录下的
_config.yml
文件 - 网站信息主要修改
title
,subtitle
,description
,author
,timezone
,url
这几项,其余的稍后修改 language: zh-CN
的支持是由NexT提供的,默认是没有效果的theme: next
其中next
取决于你安装在theme
下的目录名
配置 NexT
- 从
theme/next
目录下复制一份_config.yml
到source/data/next.yml
(具体路径取决于你的_config.yml
) - 修改
next.yml
中需要的配置项: 美化相关参考Theme Settings, 第三方服务相关参考Third Party Services
- 个人建议启用第三方服务中的
Math Equations
支持以方便书写数学表达式
测试和部署
本地测试
- 构建前需要确保至少有一篇Post,否则可能会出现404的情况
1 |
|
手动部署
在配置文件
_config.yml
的最后加入以下行1
2
3
4deploy:
type: git
repo: # Git仓库路径
branch: masterGit部署需要先安装对应的插件
npm install hexo-deployer-git
,然后和测试时类似
1 |
|
持续集成
页面源代码会被公开
本方法实现的持续集成实际上就是让代码托管帮我们执行上述
手动部署
的过程, 因此需要先配置手动部署的文件仓库下需要有两个 branch 。其中
master
分支是放生成后的静态页面, 另一个分支(source
)放你的源码在
source
分支根目录下创建.github/workflows/nodejs.yml
文件, 内容如下1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24name: Hexo Auto Deploy
on:
push:
branches: [ source ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [12.x]
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- run: npm ci
- name: Build and Deploy
uses: SeaLoong/hexo-deploy-action@master
env:
PERSONAL_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PUBLISH_REPOSITORY: ${{ github.repository }}
BRANCH: master
PUBLISH_DIR: ./public然后把文件提交到Github仓库即可
使用博客
在上面进行配置的过程中应当已经学会简单使用Hexo了,下面算是一些总结的部分
新建Post
hexo new <title>
或hexo new post <title>
会创建文件于source/_post/<title>.md
,其中最开始的内容应当类似如下
1 |
|
此外,如果有相关配置的话,可以增加categories
,comments
等项以设置对应配置的属性
然后写下你要写的内容
提交Post
如果是手动部署就直接执行对应的命令行
如果是持续集成一般只要提交commit即可
- 在提交之前可以先进行本地测试来预览一下
几个坑
- 没有Post的时候访问根页面时404
- 生成Post时出现
1 |
|
参考https://github.com/hexojs/hexo/issues/3859
还有可能是在配置文件中把一些功能打开但是没用安装对应的依赖导致的(其他报错也可能是这个原因)