我的 GitHub Pages
- 首次发布
- 最后更新
本文目录
版本
选择要比较的版本
- v2
- v1
前言
这篇文章记录我基于 Jekyll 和 Minimal Mistakes 主题搭建 GitHub Pages 的方法。几年前我就决定做这件事,但由于一些实际原因一直没有完成。现在很高兴将它写成我的第一篇文章。
网站源码可以在这里查看。
技术细节
Jekyll
按照 GitHub 的建议,我选择了静态站点生成器 Jekyll。学习基本概念时,可以从分步教程开始。后续开发则可以使用 Jekyll Docker 镜像完成构建和本地托管。
# 从 Jekyll Docker 镜像启动容器# 端口 4000 用于在 http://localhost:4000 本地托管# 镜像还公开了端口 35729docker run -itd -p 35729:35729 -p 4000:4000 -v $HOME/workspace/sshawn9.github.io:/jekyll --name jekyll jekyll/jekyll bash
# 进入容器docker exec -it jekyll bash
# Jekyll 容器中的一些常用命令bundle init # 创建默认 Gemfilebundlebundle updatejekyll serveMinimal Mistakes 主题
与从零开始相比,选择一个主题更加方便,可以专注于写作而不必过多考虑布局和样式。我一直在寻找优雅的主题,但真正符合要求的往往并不免费。下面是一些主题网站:
最终我回到了广为人知、以 MIT 许可证发布且可以免费使用的 Minimal Mistakes。可以通过主题模板 mm-github-pages-starter 创建自己的 GitHub Pages 仓库。

不要遗漏其故障排查说明。尝试在本地托管由该模板建立的网站时,可能遇到下面的 Liquid 异常:

修复方法如下:
- 在
_config.yml中加入以下内容。
# 本地托管:# 修改为自己的设置PAGES_REPO_NWO: sshawn9/sshawn9.github.iorepository: sshawn9/sshawn9.github.io- 在
Gemfile中加入以下内容。
group :jekyll_plugins do gem "kramdown-parser-gfm" gem "webrick"end更多信息参见这里。对于 No GitHub API authentication could be found. Some fields may be missing or have incorrect data. 这条警告,我选择忽略。
部署到 GitHub
Jekyll 部署文档列出了多种方案,我选择 GitHub Actions。这里是我的 GitHub Actions 部署配置。
更多信息
网站图标
创建自己的 _includes/head/custom.html,具体方法参见这里。