核心用法
finishing-a-development-branch 是开发工作流的收尾技能,适用于功能实现完成、测试全部通过后的分支整合决策。核心流程遵循验证→选项→执行→清理四阶段:
1. 强制测试验证:执行项目测试命令(npm test/cargo test/pytest等),失败则阻断流程并展示错误
2. 确定基准分支:自动检测 main/master 或人工确认分支来源
3. 四选一决策:严格提供四种选项——本地合并、创建 PR、保留分支、废弃工作
4. 执行与清理:根据选择执行对应 git 操作,智能处理工作区(worktree)的保留或移除
显著优点
- 防错设计:测试失败阻断机制避免合并问题代码;废弃操作需输入"discard"二次确认
- 选项结构化:消除"接下来做什么"的模糊性,强制四选一减少决策疲劳
- 工作区感知:自动识别 git worktree 环境,避免误删正在使用的开发目录
- 流程闭环:与
subagent-driven-development、using-git-worktrees等技能形成完整 DevOps 链路
潜在局限
- 工具预设:PR 创建依赖 GitHub CLI (
gh),非 GitHub 平台需手动调整 - 测试假设:假定项目已配置标准化测试命令,老旧项目可能无可用测试
- 单分支场景:复杂的多分支依赖场景(如 stacked PR)需额外人工介入
- 无回滚机制:本地合并成功后直接删除分支,无自动备份或撤销提示
适合人群
- 采用 Git Flow 或 trunk-based 开发的中大型团队
- 使用 git worktree 进行多分支并行开发的开发者
- 需规范代码审查流程、减少"误删分支"事故的技术负责人
- 配合 AI 编程助手(如 Claude Code)进行自动化开发的场景
常规风险
| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| 测试通过但逻辑错误 | 测试覆盖不足导致合并问题代码 | 结合 PR 流程进行人工代码审查 |
| 基准分支误判 | 自动检测失败时依赖用户确认 | 明确标注当前基准分支来源 |
| 工作区误删 | Option 1/4 自动清理 worktree | 执行前展示受影响路径 |
| 远程同步冲突 | 本地合并前未拉取最新基准分支 | 流程内置 `git pull` 步骤 |
安全建议:Option 4(废弃)为最危险操作,虽有多重确认,建议关键分支配合 reflog 备份策略使用。