hexo config

记录使用 hexo 在 Ubuntu 20.04 环境下搭建简易静态博客的过程。

安装 hexo

安装前置软件包

安装 hexo 前需要安装其他使用到的包。安装命令如下:

  • 安装 git
1
sudo apt install git

git 配置与链接远端仓库略

  • 安装 nodejs 与 npm
1
2
3
4
5
6
7
sudo curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt install nodejs
# nodejs 软件包同时包含 node 和 npm 二进制包

# 可以利用下面两条命令查看版本
node --version
npm --version

其中第一条命令是下载并执行 NodeSource 安装脚本,这个脚本将其签名 key 添加到你的系统,创建一个 apt 源文件,安装必备的软件包,并且刷新 apt 缓存.如果需要另外的 Node.js 版本,例如12.x,将 setup_14.x 修改为 setup_12.x 。

  • 安装 hexo
1
npm install hexo-cli -g

若提示权限不足,可以使用 sudo 权限执行。

初始化博客结构

在终端 cd 到指定目录,执行下列命令:

1
2
3
4
hexo init [blog_dir_name]	# 最后的参数是初始化博客结构的总目录的名称
cd [blog_dir_name]
npm install # 使用 npm 安装相关包
hexo server # 在本地搭建预览,可在浏览器访问预览:://127.0.0.1:4000

新建完成后,指定文件夹的目录如下:

1
2
3
4
5
6
7
8
.
├── _config.yml # 配置文件
├── package.json
├── scaffolds # 存放一些模板类文件
├── source # 存放博客源文件
| ├── _drafts
| └── _posts
└── themes # 存放主题

_config.yml 配置文件详细指南可查看官方文档 ,内容不复杂,一般只进行少许修改即可。

装载 snark 主题

克隆主题文件到本地:

1
git clone https://github.com/litreily/hexo-theme-snark.git [blog_dir_name]/themes/snark

安装相关依赖(在博客目录内使用):

1
2
3
4
5
npm install hexo-renderer-pug --save
npm install hexo-renderer-sass --save
npm install hexo-generator-feed --save
npm install hexo-generator-search --save
npm install hexo-generator-sitemap --save

_config.yml 配置文件中进行部分修改:

1
2
3
4
highlight:
enable: false
line_number: false
auto_detect: false

创建几个可选的功能页面(也在博客目录内使用):

1
2
3
4
hexo new page archives
hexo new page categories
hexo new page tags
hexo new page about

推送到远端仓库

只使用 serve 命令只能在本地预览,要使用其他命令来将博客文件部署到仓库,或者将生成的所有静态文件直接推送到仓库。

相比较来说,后者无需进行任何配置,只是需要每次在更新博客时重新生成静态文件,然后一次次的推送到远端。这些重复性的动作可以使用脚本来代劳,所以执行起来与自动部署的命令相差不多。

生成静态文件:

1
2
# hexo clean && hexo generate
hexo generate
选项 描述
-d, --deploy 文件生成后立即部署网站
-w, --watch 监视文件变动
-b, --bail 生成过程中如果发生任何未处理的异常则抛出异常
-f, --force 强制重新生成文件 Hexo 引入了差分机制,如果 public 目录存在,那么 hexo g 只会重新生成改动的文件。 使用该参数的效果接近 hexo clean && hexo generate
-c, --concurrency 最大同时生成文件的数量,默认无限制

一般在不使用 clean 命令时可以使用 -f 参数 。

1
hexo clean

清除缓存文件 (db.json) 和已生成的静态文件 (public)。在某些情况(尤其是更换主题后),如果发现您对站点的更改无论如何也不生效,您可能需要运行该命令。

静态文件会生成在博客目录下的 public 目录中,现在只需要将该目录中的所有文件放入仓库目录,在推送到远端即可。当然,重复的工作可以交给脚本。

参考链接

官方文档

snark主题文档