Skip to content

release notes 生成说明

wjiangwang edited this page Jun 30, 2023 · 1 revision

关于release notes

GitHub的release notes是指在软件开发过程中,发布新版本时所附带的说明文档。它们提供了对于每个版本所做的更改、修复和改进的详细描述。通常包含了版本号、概述、新功能、修复的问题、已知问题、其他相关说明。 主要作用有以下几点:

  • 传达信息:Release Notes提供了软件版本发布的详细信息,包括新功能、改进和修复的问题。这使用户、开发者和其他相关人员能够了解软件的更新内容和改动细节。
  • 文档化历史:Release Notes记录了软件发布的历史记录,使人们能够追踪不同版本之间的更改和演进。这对于软件开发团队来说是很有价值的,可以回顾过去的工作和取得的进展。
  • 用户反馈和支持:通过查看Release Notes,用户可以了解他们所使用的软件版本的已知问题和解决方法。这有助于他们解决可能遇到的问题,并提供反馈和支持。
  • 促进升级和采用:对于使用旧版本的用户来说,Release Notes可以是一个决定是否升级到新版本的依据。如果他们看到新版本中有一些重要的功能改进或问题修复,他们可能会更愿意升级并采用新版本。

对于我们开发团队而言,Release Notes是一个重要的沟通工具,它们传达了开发团队的工作成果和对用户反馈的回应。通过提供清晰的版本更新信息,团队可以增强用户对软件的信任和满意度,并鼓励用户升级到最新版本。此外,通过记录版本更改和问题修复,Release Notes有助于团队追踪软件的演进和质量改进,为未来的开发工作提供参考。

自动生成release notes

使用自动生成的发行说明,可以快速生成发行版内容的概览。自动生成的发行说明包括合并的PR、贡献者列表和完整的changelog链接。

可以通过配置文件.github/release.yml自定义发行说明的内容,使用标签创建自定义类别来组织要包含的PR,并排除某些标签和用户不出现在输出的文档当中。

tiny-cli项目较为特殊,其中包含了多个套件、插件,所以并没有采用常见的按照Features、Bug Fixes的分类方法(参考tiny-vue)。而是按照具体的插件、套件、cli进行分类,具体配置如下:

changelog:
  exclude:
    labels:
      - ignore-for-release
    authors:
      - allcontributors[bot]
  categories:
    - title: tiny-toolkit-pro
      labels:
        - toolkit-pro
    - title: tiny-toolkit-docs
      labels:
        - toolkit-docs
    - title: tiny-toolkit-dev
      labels:
        - toolkit-dev
    - title: tiny-plugin-hwc
      labels:
        - plugin-hwc
    - title: tiny-plugin-link
      labels:
        - plugin-link
    - title: tiny-plugin-lint
      labels:
        - plugin-lint
    - title: cli
      labels:
        - cli
    - title: Other Changes
      labels:
        - documentation
        - refactoring
        - unit-test
        - ci

创建发布一个release

  1. 点击仓库右侧的Releases
image
  1. 点击右上方起草一个release
image
  1. 选择或创建Tag
  • 可选择一个已存在的tag或者直接输入一个新的tag点击生成
  • Tag名称采用cli版本号-日期的形式,例如v1.0.0-2023/06/29
  • Target选择目标分支,对于tiny-cli就是dev分支
image
  1. 编写release
  • Title与Tag保持一致即可
  • 点击有侧的Generate release notes即可按照配置文件生成release。也可自行修改编写
  • 编写完成后点击下方的发布按钮进行发布
image

注意事项

  • 自动生成release notes来源依赖于每次PR的标签。所以需要确保每次的PR我们都要打上合适的标签
  • 自动生成release notes内容依赖于每次PR的标题。需要我们提PR时规范填写PR标题最好按照commit message的规范填写,一次PR别提交太多内容,最好只提交一种相关的修改。
  • release的发布间隔可采用定期的方式,比如每月更新一次或者在有重大新特性发布后更新

相关链接