用途:处理合并冲突,包括为指定 PR 解决冲突、对与目标分支冲突的分支执行 rebase、分析冲突改动并借助 git 历史做取舍判断。无冲突、纯代码审查或全新代码场景不适用。
主要流程:解析 PR 编号后,用 gh pr view 获取标题、描述与分支信息;通过 gh pr checkout、git fetch origin main、GIT_EDITOR=true git rebase origin/main 复现冲突;再用 git status 与 git diff 定位冲突文件。随后分四阶段:分析冲突(读冲突标记、对两侧执行 git blame、拉取相关提交信息与 diff)、制定策略(按 bugfix、feature、refactor 等意图分类,评估新旧与结构重叠)、执行解决(应用策略、必要时用反斜杠转义冲突标记、git add 暂存)、验证(确认无残留冲突标记、检查语法与 diff)。
关键命令:gh pr checkout [PR_NUMBER] --force;git fetch origin main;GIT_EDITOR=true git rebase origin/main;git blame -L [start],[end] [commit] -- [file];git show --format="%H%n%an%n%ae%n%ad%n%s%n%b" --no-patch [sha];git ls-files -u;GIT_EDITOR=true git rebase --continue。
原则与限制:优先按变更意图而非表面差异解决;尽可能合并双方有价值的改动;bugfix 通常优先于 feature,较新改动通常更相关,但安全补丁等例外;逻辑变更优先于格式变更。避免盲目选边、忽略 PR 上下文、不验证已解决代码,以及在 diff 中使用未转义的冲突标记。完成后需暂存文件、确认无冲突标记与语法错误,并记录解决理由。