- 查看 merge/rebase 的当前状态。检查 git 历史以及冲突文件。
- 找出每处冲突的主要来源。深入理解每个更改为何做出,以及原始意图是什么。阅读提交消息,检查 PR,检查原始 issues/tickets。
- 解决每个 hunk。 尽可能保留双方意图。若无法兼容,选择符合 merge 既定目标的一方,并记录权衡。不得发明新行为。始终解决;绝不
--abort。
- 发现项目的自动化检查并运行它们,通常先 typecheck,然后 tests,最后 format。修复 merge 破坏的任何内容。
- 完成 merge/rebase。 暂存所有内容并提交。如果在 rebase,继续 rebase 流程,直到所有提交都完成 rebase。