GitHub Pages
使用 GitHub Pages 创建一个基于您的GitHub仓库的网站或博客
Welcome
使用 GitHub Pages,您可以托管个人博客、项目文档、您的简历、作品集或您想要展示的任何静态资源内容。 您的 GitHub 仓库可以轻松成为自己的网站。 在本课程中,我们将向您展示如何使用 GitHub Pages 设置您自己的网站或博客。
- 目标人群:新手,学生,项目维护者,小型企业
- 课程目标:构建一个 GitHub Pages 站点
- 你将构建:我们将使用 Jekyll (一个静态网站生成工具) 构建一个博客网站
- 前置条件:如果您不熟悉分支、提交、拉取请求,请先学习我们的GitHub快速入门课程
- 学习时长:小于一个小时
通过本课程,您将
- 启用 GitHub Pages
- 配置您的站点
- 自定义网站首页
- 创建一篇博客文章
- 合并您的拉取请求
如何开始
-
右键点击上方 Start course 按钮
-
在新页面中根据系统提示新建一个仓库。
- 仓库名称、描述这些字段系统已经帮我们自动填充好了,您可以按需修改。
- 建议使用选择公共仓库,因为私有仓库 GitHub Action有免费额度限制
- 最后点击 Create repository 按钮
-
仓库创建完毕后,等待大约 20 秒(等待Action执行),然后刷新页面。注意是刷新您仓库的页面,不是本课程的页面。如果页面没有变化,请继续等待。
步骤1:启用 GitHub Pages
欢迎来到 GitHub Pages 、Jekyll 🎉!
第一步,您需要在新仓库上启用GitHub Pages。启用后,GitHub 会自动获取 main
分支的内容并用于发布网站。
⌨️ 动手
-
点击您仓库的 Settings 菜单
-
进入设置后,点击 Code and automation 下的 Pages
-
请确保 Source 下拉框选择 "Deploy from a branch",Branch 选择
main
-
点击 Save 保存
-
等待大约20秒,然后刷新页面。GitHub Actions 将自动更新到下一步。
启用 GitHub Pages 会创建仓库的部署。 在等待部署期间,GitHub Actions 可能需要长达一分钟的时间才能响应。 这一步比较慢,请您耐心等待,后续步骤大约是20秒。 注意:在Pages设置页面顶部,会出现您网站的链接地址,复制链接或点击 "Visit site" 按钮可查看您的 GitHub Pages 站点。
步骤2:配置您的网站
恭喜,您已开启了GitHub Pages!🎉
我们将在我为您创建的一个分支my-pages
中工作,以使该网站看起来很棒。 ❇️
Jekyll 使用名为 _config.yml
的文件来保存站点配置、如主题、网站名称、等设置。
我们需要使用博客主题,这里我们选择 "minima"。
动手练习:开始配置您的站点
-
切换到
my-pages
分支,点击_config.yml
文件 -
右上角有个编辑按钮,打开文件编辑器
-
为了使用
minima
主题,我们在_config.yml
文件里添加下面的内容theme: minima
-
(可选)您还可以添加其他配置变量,例如站名
title:
, 作者author:
、站点描述description:
-
提交修改
-
(可选)创建一个拉取请求以便查看您在本课程中将进行的所有更改。 单击Pull Requests tab,单击New pull request,设置
base: main
和compare:my-pages
-
等待大约20秒,然后刷新页面。GitHub Actions 将自动更新到下一步。
步骤3:自定义你的网站首页
干的漂亮,您已设置好了网站主题✨
想要自定义首页,您可以修改 index.md
或者 README.md
文件,向其添加内容。GitHub Pages 会首先查找是否有 index.md 文件。
我们的仓库里已经有一个 index.md 文件,因此我们可以修改它。
⌨️ 动手练习:创建您的首页
- 切换到
my-pages
分支,点击index.md
文件 - 右上角有个编辑按钮,打开文件编辑器
- 在编辑框内输入你想要在首页上展示的内容,注意使用Markdown格式
- (可选)您还可以修改
title:
或暂时不管,我们将在下一步中讨论 - 提交
my-pages
分支中的修改 - 等待大约20秒,然后刷新页面。GitHub Actions 将自动更新到下一步。
步骤4:发布一篇文章
您的首页看起来很棒!🤠
GitHub Pages 使用 Jekyll 工具来生成网站。在 Jekyll 中,博客需要遵守特定的文件命名格式和frontmatter。文件必须以 _posts/YYYY-MM-DD-title.md
方式命名,
frontmatter中必须包括title
和date
。
什么是frontmatter? Jekyll 文件使用的语法称为 YAML frontmatter,它位于文件开头,示例如下:
---
title: "Welcome to my blog"
date: 2019-01-20
---
更多关于front matter配置说明请参考 Jekyll frontmatter 文档
⌨️ 动手练习:创建一篇博客文章
-
切换到
my-pages
分支 -
点击 Add file 点击 Create new file 创建文件
-
文件取名为
_posts/YYYY-MM-DD-title.md
-
将
YYYY-MM-DD
替换为今天的日期,同时可以修改title
如果您确实要编辑标题,请确保单词之间有连字符。 如果您的博客文章日期不遵循正确的日期约定,您将收到错误消息,并且您的网站将无法构建。 有关详细信息,请参阅“排查 GitHub Pages 站点的 Jekyll 构建错误”。
-
将下面的内容放于文件顶部
--- title: "YOUR-TITLE" date: YYYY-MM-DD ---
-
将
YOUR-TITLE
替换为你真实的文章标题 -
将
YYYY-MM-DD
替换为今天的日期,例如2023-09-04
-
快速编写一段文章草稿,后面可以随时对其修改
-
提交修改
-
等待大约20秒,然后刷新页面。GitHub Actions 将自动更新到下一步。
步骤5:合并您的拉取请求
干的漂亮,朋友 ❤️!大家很快就能阅读您的博客!
您现在可以合并您的拉取请求!
动手
-
将
my-pages
分支的修改合并到main
。如果您已经在步骤2中创建了Pull Request,那么现在只需打开那个PR,然后点击Merge pull request完成合并。 如果您之前没有创建,现在可以按照步骤2 中的说明进行操作。 -
(可选) 删除
my-pages
分支 -
等待大约20秒,然后刷新页面。GitHub Actions 将自动更新到下一步。
完成
恭喜您完成了本课!
课程回顾:
- 首先您开启了 GitHub Pages
- 在config文件中指定网站主题
- 学习Jekyll的文件命名规范
- 使用Jekyll创建了您的第一篇文章