mcpField
R
release

release

github.com/yoshiko-pg开发3.3k48 次安装9 周前更新
代码仓库

关于 release

用于当前仓库起草变更日志并在用户明确确认后执行发布的技能。它规定提交分类、版本更新、打标签、发布及日语汇报步骤。

主要功能

  1. 01起草分类后的 Unreleased 说明
  2. 02发布前请求用户确认
  3. 03更新版本、提交并创建标签
  4. 04发布 GitHub Release 并推送更改

适用场景

  1. 01根据标签后的更改准备发布说明
  2. 02获批后发布补丁版本
  3. 03汇报发布文件、标签和网址

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/yoshiko-pg/difit --skill release

安装后在 Claude Code 中输入/release确认已加载。

详细介绍

发布工作流

按照此工作流处理当前仓库。

准备变更日志草稿

  1. 运行 ./scripts/get-changes-since-tag.sh。
  2. 根据需要将变更分类到以下部分:Added、Changed、Deprecated、Removed、Fixed、Security、Thanks。
  3. 遵循脚本输出规则:
    • 使用脚本输出中的 GitHub 用户名。
    • 从 Thanks 中排除 yoshiko-pg 和 renovate[bot]。
    • 有 PR 编号时,请包含编号。
    • 每个部分中,带 PR 编号的条目按 PR 编号升序排列;同一条目中的多个 PR 编号也按升序排列。
    • 根据提交主题和正文进行分类。
    • 将常规的仅依赖项更新(包括分组依赖项更新、包管理器升级和普通的单个依赖项升级)合并为一条 Changed 条目,格式为 - Update dependencies (#123 #124 #125);只有依赖项变更明确涉及常规维护之外的用户可见内容时,才单独列出。
  4. 将分类后的内容写入 CHANGELOG.md 的 ## [Unreleased] 下方。
  5. 用日语请用户确认。

明确确认后发布

  • 确认后,对 CHANGELOG.md 仅允许进行以下编辑:
    • 在 ## [Unreleased] 下方直接插入带有当天日期的新版本标题
    • 将已记录的 Unreleased 正文原样放在新标题下
    • 将 ## [Unreleased] 留空
    • 更新底部的 Unreleased 和新版本比较链接
  1. 运行 npm version --no-git-tag-version patch。
  2. 将当前 Unreleased 内容移至新的版本部分,并添加当天日期。
  3. 更新底部链接:
    • 将 Unreleased 比较链接更新为指向新版本标签。
    • 添加新版本的比较链接。
  4. 使用英文提交消息 chore: release vX.Y.Z 提交 CHANGELOG.md 和 package.json。
  5. 创建标签 vX.Y.Z。
  6. 推送 main 和标签:git push origin main --tags。
  7. 如果推送因非快进错误被拒绝:
    • 运行 git pull --rebase origin main。
    • 重试 git push origin main --tags。
  8. 根据 CHANGELOG.md 中新版本部分的文本编写发布说明。
  9. 在 origin 上创建 GitHub 发布:
    • gh release create vX.Y.Z --title "vX.Y.Z" --notes-file <notes-file>

向用户输出

  • 用日语回复。
  • 报告已更新的文件、创建的标签和 GitHub 发布 URL。
  • 如果执行了恢复步骤(例如因非快进错误而进行变基),请予以说明。

评论

支持 Markdown