ENGINEERING PLAYBOOK
Git 合并冲突处理流程
冲突表示 Git 不能自动决定结果,不等于任一方代码错误。处理前先冻结工作区并理解两侧提交意图,再逐文件编辑和验证。
适用人群:需要保留双方意图并验证合并结果的代码维护人员
排查路径
- 确认当前分支、目标分支与工作区状态。
- 查看冲突文件和三方差异。
- 逐块决定保留、合并或重写。
- 运行测试后标记已解决并完成合并。
执行步骤
- 执行 git status 记录冲突清单。
- 使用 git diff --ours 与 --theirs 理解两侧。
- 删除全部冲突标记并保持语法有效。
- 只 git add 已核对的文件。
- 运行相关测试和完整回归再提交。
可复制命令与示例
查看冲突状态
git status --short && git diff --name-only --diff-filter=U中止尚未确认的合并
git merge --abort可复现任务记录
具体错误或任务
两个分支修改同一区域产生 content conflict,需区分语法合并与业务行为验证。
失败信号:git status 显示 unmerged paths,文件含冲突标记,测试尚未覆盖双方改动。
最小输入
冲突文件、base/ours/theirs 三方差异、相关测试和预期业务行为。
验证命令或步骤
git diff --name-only --diff-filter=U预期输出
解决并暂存后命令无输出,git diff --check 无冲突标记或空白错误。
失败输出
仍列出文件,或误选一侧导致另一分支的必要行为消失。
成功判据
未合并文件为 0,相关测试通过,合并提交说明保留了哪些双方意图。
本任务常见错误
- 直接选择 ours 或 theirs
- 只删除冲突标记不跑测试
- 未查看共同基线导致重复代码
资料与适用边界
三方合并、状态与差异命令依据 Git 官方文档;业务正确性由仓库测试和评审结论验证。
证据块复核日期:2026-09-04
相关站内页面
资料依据与复核边界
资料复核日期:2026-08-29