SuperAPI AI 工具集

merge

编程与开发

查看项目

更新于 10-15 23:42

技能介绍

用途:把当前功能分支合并进 main,并可选择性删除该分支及其关联工作树。该技能把合并与清理合并为一个流程,默认优先快进合并,只有在分支确实分叉或用户明确要求时才保留合并提交。

主要能力与流程:若当前已在 main(或 master)则拒绝执行并报告无可合并内容;要求工作区干净,若有未提交改动会询问用户提交、暂存还是中止,不静默 stash;记录功能分支名后同步 main(git checkout main、git pull --ff-only origin main);先尝试 git merge --ff-only "$FEATURE",成功即完成合并;失败则回退到 git merge --no-ff "$FEATURE";若有冲突则停止并报告,不自动解决,也不接受默认的“Merge branch …”消息,需写有意义的合并提交消息;随后 git push origin main;最后交互式询问是否删除该分支(本地与远程)及关联工作树,同意时先切回主仓库目录再执行 git worktree remove,使用 git branch -d(仅在用户明确确认时才用 -D),并 git push origin --delete。结束时报告 main 上的提交哈希、是否删除分支、是否移除工作树。

限制与注意事项:始终使用 --ff-only 优先,绝不使用 --no-verify 绕过 pre-push 钩子,失败应修复根因;清理工作树需先回到主仓库目录;不自动解决冲突;main 本地分叉导致 git pull --ff-only 失败时应如实上报,不要用 --rebase 掩盖;git branch -d 对未合并分支会拒绝,这是安全网,不得自动升级为 -D;远程分支不存在时删除命令以非零退出属正常,记录后继续;macOS 大小写不敏感文件系统可能掩盖仅大小写不同的分支冲突。具体使用方式与安装命令暂未提供。