用途:当用户要求把工作合并进 main,并且只保留 main 分支时使用;也可用于合并后一步完成分支清理。
主要能力:校验仓库状态并同步分支;确定主干分支(优先 main,其次 master);将当前分支合并进主干并推送到远程;移除与已删分支关联的 worktree;删除本地与 origin 上除主干外的所有分支;最后校验仅剩主干。
使用方式(命令保持原样): 先运行 git status --porcelain,有未提交改动则停止;用 git rev-parse --show-toplevel 确定仓库根目录;git fetch --all --prune 同步分支。 用 git branch --list main master 确定主干。 若当前分支不是主干:git checkout <base>、git pull --ff-only、git merge <current-branch>,必要时解决冲突并完成合并。 推送主干:git push origin <base>。 用 git worktree list 列出 worktree,对非主干分支的 worktree 执行 git worktree remove <path>。 本地分支删除:用 git branch --format='%(refname:short)' 列出,对非主干分支执行 git branch -D <branch>。 远程分支删除:用 git branch -r --format='%(refname:short)' | rg '^origin/' 列出,对非 origin/<base> 的分支执行 git push origin --delete <branch>。 最后用 git branch -vv 与 git branch -r 确认只剩主干。
适用场景:合并主干后需要一次性清理本地与远程多余分支,并清理相关 worktree 的仓库维护场景。
限制与注意:该技能具有破坏性,会删除主干外的所有分支;若远程不叫 origin,需要替换为对应名称;若 worktree 文件因策略无法删除,应报告并请用户手动移除。资料未提供安装方式、价格或收费信息。