SuperAPI AI 工具集

finishing-branch

编程与开发

查看项目

更新于 10-16 06:17

技能介绍

该技能用于完成一个功能分支后的收尾流程,属于工作流链条的最后一步,被 workflows:work(第 4 阶段)调用,前置步骤为 verification-before-completion,并与 git-worktree 配合管理 worktree 生命周期。

用途:在功能分支开发完成后,安全地提交、合并、发起 PR、保留或丢弃分支。

前提与检查:运行前需确认全部测试通过(运行完整测试套件而非仅新增测试;若无测试套件,则按 verification-before-completion 做差异审查与语法校验);所有任务完成(检查任务列表或计划文件是否有未勾选项);验证证据是新的。若测试失败则停止并先修复。

分支守卫:先用 git branch --show-current 与 origin/HEAD(或 main/master)比较,若当前就在默认分支上则停止并询问用户,不提供合并或丢弃选项。若未配置远程(git remote 为空),只提供选项 1(本地合并)与选项 3(保留原样),禁用推送/PR。

提交:提交前查看 git status 与 git diff,尽量暂存具体文件而非 git add .,提交信息使用约定式格式,如 git commit -m "feat(scope): description of what and why"。若实现阶段已有增量提交且工作区干净,可跳过。

四个选项:选项 1 本地合并:git checkout $default_branch、git pull origin $default_branch、git merge --no-ff $feature_branch,合并后跑完整测试;失败则中止合并并停留功能分支,通过则 git branch -d $feature_branch。选项 2 推送并建 PR:git push -u origin $feature_branch,用 gh pr create 按模板创建并报告 PR URL;模板含 Summary、Testing、Post-Deploy Monitoring & Validation、Before/After Screenshots。选项 3 保留原样:不做合并、PR 或清理。选项 4 丢弃:破坏性操作,需用户输入 "discard" 精确确认,然后 git checkout $default_branch、git branch -D $feature_branch,远程存在则 git push origin --delete $feature_branch,并清理 worktree。

worktree 清理:合并或丢弃后立即清理(git worktree list、git worktree remove <path>、git branch -d <name>);PR 场景保留至合并后再清理;保留原样则不动。

安全规则:不在测试失败时继续;无 "discard" 输入不删除;无明确请求不强制推送;无明确许可不直接合并到 main/master;合并后始终跑测试。