I think we need here to make the difference between a trivial merge and a non
trivial merge. I want to be able to trust the merge on a file that did not
thrown my merger in the air, and I don't care if the merger is thrown too often ...
I usually check (double check, triple check) my merges, but that one, as said
was a big one, and I only checked the file that had conflicts. Hopefully, the
compilation process told me about that one, but who knows which one did not
triggered a compilation error ...
Anyway, further investigations shown that the problem occurs if the hunk is
wrapped around some similar lines (\n in the posted example) which the algorithm
treat as common context, so, the (idea of the) patch from tonfa seems good to me
(did not reviewed it at all). Running simplemerge.Merge3Text.find_sync_regions
highlight the problem. |