写一个冲突计数
补全 count_conflicts(base, ours, theirs),输出当前这次合并的冲突处数。
⚠️ 早合还是晚合,用数字说话
用 count_conflicts 算两次:早合并(对方只改了 HOST)和晚合并(现在这样)。 两个数拼起来输出(早合并在前)。
⚠️ 冲突面和真冲突
输出两个数:两边都动过的行数(冲突面)和真正冲突的行数。
拿到一个冲突文件,第一步做什么
面对一个满是标记的文件,第一件该做的事是【0】。
交付前必须验的两件事
解决完冲突、提交之前,必须验的是【0】。
五项一起对得上吗
把这条路线算过的东西一次验完。运行下面这段程序: def classify(b, o, t): if o == t: return "same" if o == b: re
第一步:盘点这次冲突
写出 classify,输出两个数:冲突处数 / 能自动合并的行数。
第二步:把冲突文件生成出来
写出 merge3,输出两个数:带标记的总行数 / 冲突块的个数。
第三步:解决并自检
写出 resolve 和 is_marker,输出两样:解决后的行数 / 还有没有残留标记。
交付:完整处理一次冲突
这是本条路线的最终作品。把前面的函数合起来,一次验完五条: 六行里有 2 处冲突,4 行自动合并 带标记的文件是 14 行,其中标记行 6 行 两个冲突块分别从第 2、10 行开始 取对方版解决后 6 行,且没有残留标记 "两边都