
2015-10-13 22:08 GMT+02:00 Dimitri DeFigueiredo
[...] I hadn't looked at how to actually go about writing the "bug-free" merge tool (if it becomes possible to write one).
Isn't the whole approach limited by Rices's theorem? ( https://en.wikipedia.org/wiki/Rice%27s_theorem) In general we have to deal with partial functions, and the property you're talking about is definitely not trivial in the theorem's sense. So this implies 2 choices: * You don't detect all problems caused by merging (no point in putting some effort into that approach, it's basically what we have today with plain 'git merge'). * You have false positives, i.e. the merge tool complains although the merge is OK. So the best you can do AFAICT is to keep the amount of false positives low, hoping that people will see a benefit for the added annoyances.