关于自动生成的发布说明
自动生成的发布说明为手动编写 GitHub 发布的发布说明提供了一种自动化替代方案。使用自动生成的发布说明,您可以快速生成发布内容的概述。自动生成的发布说明包括合并的拉取请求列表、发布的贡献者列表以及指向完整更改日志的链接。
您还可以自定义自动生成的发布说明,使用标签创建自定义类别来组织您想要包含的拉取请求,并排除某些标签和用户在输出中显示。
为新的发布创建自动生成的发布说明
-
在 GitHub 上,导航到代码库的主页。
-
在文件列表右侧,点击版本。
-
在页面顶部,点击创建新版本。
-
要选择版本的标签,请选择选择标签下拉菜单。
- 要使用现有标签,请点击该标签。
- 要创建新标签,请键入版本的版本号,然后点击创建新标签。
-
如果您创建了新标签,请选择目标下拉菜单,然后点击包含您要发布的项目的的分支。
-
可选:在描述字段上方,选择上一个标签下拉菜单,然后点击标识上一个版本的标签。
-
在“版本标题”字段中,键入版本的标题。
-
在描述字段上方,点击生成版本说明。
-
检查生成的说明,确保它们包含所有(且仅包含)您想要包含的信息。
-
可选:要在您的版本中包含二进制文件(例如编译后的程序),请将文件拖放到二进制文件框中,或手动选择文件。
-
可选:要通知用户该版本尚未准备好投入生产,并且可能不稳定,请选择这是一个预发布版本。
-
可选:选择设置为最新版本。如果您不选择此选项,则最新版本标签将根据语义版本控制自动分配。
-
可选:如果为仓库启用了 GitHub Discussions,则可以为版本创建讨论。
- 选择为此版本创建讨论。
- 选择类别下拉菜单,然后点击版本讨论的类别。
-
如果您准备发布您的版本,请点击发布版本。要稍后处理版本,请点击保存草稿。然后,您可以在仓库的版本 Feed 中查看已发布或草稿版本。更多信息,请参阅“查看您的仓库的版本和标签”。
配置自动生成的版本说明
-
在 GitHub 上,导航到代码库的主页。
-
在文件列表上方,选择添加文件下拉菜单,然后点击 创建新文件.
或者,您可以点击左侧的文件树视图中的。
-
在文件名字段中,键入
.github/release.yml
。这将在.github
目录中创建一个名为release.yml
的新文件。 -
在文件中,使用下面的配置选项,使用 YAML 指定要从此版本中排除的拉取请求标签和作者。您还可以创建新类别并列出要包含在每个类别中的拉取请求标签。
配置选项
参数 | 描述 |
---|---|
changelog.exclude.labels | 一个标签列表,用于排除版本说明中出现的拉取请求。 |
changelog.exclude.authors | 要从版本说明中排除其拉取请求的用户或机器人登录名列表。 |
changelog.categories[*].title | 必需。版本说明中更改类别的标题。 |
changelog.categories[*].labels | 必需。使拉取请求符合此类别的标签。使用* 作为对未匹配任何先前类别的拉取请求的通配符。 |
changelog.categories[*].exclude.labels | 一个标签列表,用于排除在此类别中出现的拉取请求。 |
changelog.categories[*].exclude.authors | 要从此类别中排除其拉取请求的用户或机器人登录名列表。 |
示例配置
为标记语义版本发布的仓库的配置
# .github/release.yml changelog: exclude: labels: - ignore-for-release authors: - octocat categories: - title: Breaking Changes 🛠 labels: - Semver-Major - breaking-change - title: Exciting New Features 🎉 labels: - Semver-Minor - enhancement - title: Other Changes labels: - "*"
# .github/release.yml
changelog:
exclude:
labels:
- ignore-for-release
authors:
- octocat
categories:
- title: Breaking Changes 🛠
labels:
- Semver-Major
- breaking-change
- title: Exciting New Features 🎉
labels:
- Semver-Minor
- enhancement
- title: Other Changes
labels:
- "*"
为不标记拉取请求但我们希望在版本说明中分离 Dependabot 自动拉取请求的仓库的配置(需要labels: '*'
才能显示通配符类别)
# .github/release.yml changelog: categories: - title: 🏕 Features labels: - '*' exclude: labels: - dependencies - title: 👒 Dependencies labels: - dependencies
# .github/release.yml
changelog:
categories:
- title: 🏕 Features
labels:
- '*'
exclude:
labels:
- dependencies
- title: 👒 Dependencies
labels:
- dependencies
进一步阅读
- “管理标签”