版本发布
发布项目版本,更新版本文件,验证后创建 release commit 和 git tag,并推送到远程。
版本号使用语义化版本,如 0.2.0、1.0.0。版本文件写入纯版本号 X.Y.Z,最终 git tag 必须使用 vX.Y.Z 格式。用户输入 0.2.0 或 v0.2.0 时,都按版本号 0.2.0 发布,并创建 tag v0.2.0。
执行流程
使用发布脚本,不要手工拼接 release 命令。优先用项目自带的脚本,仓库没有才用插件的:
- 仓库根目录存在
scripts/release.py→ 用项目脚本:python scripts/release.py [版本号] - 没有项目脚本 → 用插件脚本:
uv run ${CLAUDE_PLUGIN_ROOT}/scripts/release.py [版本号]
如果用户未提供版本号,先不带参数运行脚本获取推荐版本(在报错输出里),用户确认后再带版本号执行。
两个脚本接口一致,都负责:
- 检查
main分支、干净工作区、远程可访问、tag 不冲突。 - 更新各自清单内的版本文件(项目脚本以仓库实际为准)。
- 运行验证,创建 commit
chore: bump version to <版本号>,创建并推送 tagv<版本号>。
失败处理
- 按脚本错误输出处理。
- 验证失败时终止,不创建 commit/tag。
- 推送失败时提示用户本地 commit/tag 状态和手动推送命令。
Forbidden
- 绕过上述发布脚本手工执行发布。
- 创建或推送不带
v前缀的 release tag。 - 使用
--force推送。