Release Drafter 持续发布说明
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md 的指引,将 @user_3c6cb52e/draft-release-notes-continuously-with-release-drafter 安装到你的 AI 助手中。
技能介绍
问题:手动维护发布说明的痛点
每次发布前,团队需要手动整理自上次发布以来的所有变更,包括 bug 修复、新功能、文档更新等。这个过程容易遗漏,且难以追踪每个变更的来源和影响范围。更重要的是,发布说明应该在开发过程中持续更新,而不是等到发布前才临时拼凑。
技能如何工作
这个技能通过 GitHub Actions 和 Release Drafter 实现自动化:
- 持续收集:每当 PR 被合并到主分支,Release Drafter 会根据标签(如
feat:、fix:、docs:)自动归类 - 实时草稿:维护一份"活的"发布草稿(
draft.yml),在发布日前持续更新 - 版本过滤:通过
filter-by-range配置按 semver 范围筛选,例如只收集v1.x.x的变更 - 预发布支持:自动生成预发布版本号,如
v1.2.3-beta.3
关键步骤:
- 在仓库中配置 Release Drafter Action
- 编写配置文件定义标签映射和版本规则
- 合并 PR 时自动触发更新草稿
- 发布时基于草稿生成正式说明
适用边界与注意点
- 配置依赖:必须提供配置文件,否则 Action 无法运行
- 标签规范:需要团队统一 PR 标签,否则归类会混乱
- 版本管理:
filter-by-range依赖 Node.js 的semver.satisfies(),需确保标签符合 semver 格式 - 预发布标识:
$NEXT_PRERELEASE_VERSION的生成依赖于prerelease-identifier配置
这个技能适合需要频繁发布且变更较多的项目,尤其是开源项目或持续交付的团队。对于小团队或低频发布,手动维护可能更简单。
使用场景
- 每周发布新版:需要把本周合并的所有 PR 按功能、修复归类进同一份发布草稿
- 发布前准备 changelog:想直接复用 GitHub 上那份持续更新的草稿,而不是从 commit 历史里重写
- 维护多个分支版本:需要按 semver 范围筛选,只把 v1.x.x 的变更写进对应发布说明
- 打 beta 预发布包:要自动生成 v1.2.3-beta.3 这类预发布版本号并附对应说明
适合人员
- 开源项目维护者:每次发版要整理大量社区贡献的 PR,需要自动归类省去手工整理
- DevOps 工程师:负责搭建 CI/CD 流水线,想把发布说明生成作为发布流程的一环自动化
- 后端开发:每次迭代合并大量功能与修复 PR,需要一个持续更新的草稿在发布前核对
- 版本发布负责人:在 ship day 前要核对变更清单,希望有一份实时可见的草稿而不是临时拼凑