记录hexo搭建个人博客的过程,也是个人github.io仓库的使用说明
安装hexo
hexo是一个静态网页框架,使用hexo搭建好环境后,作者只需要负责写作即可,hexo会自动识别sourece/_post
文件夹中的文件并渲染成网页。配合TravisCI即可在每次push后自动更新网站。
安装hexo需要提前安装以下软件:
运行npm install -g hexo
启动新项目
hexo init <folder> # 非全局安装使用npx hexo |
或者使用克隆的仓库
git clone <repo_url> |
项目配置
项目的所有配置都保存在_config.yml
中,配置内容说明见官方文档,本项目修改配置为:
language: zh-CN |
主题设置
本项目的使用的主题为Pure,主题配置文件为themes/pure/_config.yml
,本项目修改的主要配置为:
- 修改配置文件中的个人信息以及
themes/pure/source/image
中的相关图片 - 暂时关闭侧边栏中的豆瓣图书
- 复制
themes\pure\_source
文件夹至根目录并重命名为source
中,用于启用侧边栏 - 修改
source\_data\links.yml
中的友链 menu_highlight: true
,是当前标签高亮- 启用不蒜子记录文章访问次数
- 注册Valine并启用Valine评论系统,可以通过LeanCloud的应用中的class进行管理
使用TravisCI自动发布文章
hexo发布了部署功能,现在修改配置后,直接使用hexo d
即可发布
githubAPP中添加TravisCI
在Github网页中设置App的仓库访问权限
Setting > Application > TravisCI Configure > Repository access > choose GitPages Repo
登录Travis官网,同步仓库,在设置中添加环境变量
GH_TOKEN
, value为github生成的token,只需要开通repo权限即可在项目目录中添加.travis.yml,Traivs会自动监控指定分支的提交,并执行
hexo generate
,将生成的public
文件夹发布到gh-pages分支,内容如下:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18sudo: false
language: node_js
node_js:
- 16 # use correct version
cache: npm
branches:
only:
- main # build master branch only
script:
- hexo generate # generate static files
deploy:
provider: pages
skip-cleanup: true
github-token: $GH_TOKEN
keep-history: true
on:
branch: main
local-dir: public在github仓库中设置sourcce为gh-pages分支
新文章的提交
克隆仓库的主分支到本地或使用git pull
更新本地仓库
npm install |
如果文章中需要引用其他静态资源,可以在同一目录内新建一个相同名称的文件夹(不含后缀),可以直接使用相对引用。
例如_post\2021\demo.md
引用_post\2021\demo\demo.jpg
可以直接写为![img](demo.jpg)
。