Earlier today I tried to merge branches in the project and found really awful merge result from the built-in merge tool into VS2015, although the compare tool works perfectly and shows me only the changes in the code, not the whole blocks, which I can't merge easily in 'two clicks'.
Here are two screenshots, from the merge tool and the compare tool, as you can see the difference is enormous.
I tried did merge from the VS and the SourceTree tool - the same result.
That is a bug or something else? How I can change something? Sometimes merging like that, which is very simple, takes a lot of time to merge by hand.

- 865
- 1
- 7
- 12
-
2Did you change indentation or line endings? – Lasse V. Karlsen Apr 05 '17 at 16:40
-
1Oo. Really. I missed it. Thank you! The second developer use Xamarin Studio from the Mac. How to exclude indentation from the merge process? – Dmytro Bondarenko Apr 05 '17 at 17:00
1 Answers
Regardless of the issue with line ending differences, the default merge tool in visual studio is awful. Like shockingly bad. It does not support proper 3-way merging like any serious merge tool does.
Fortunately you are able to configure visual studio to use external merge/diff tools, so you should configure it to use KDiff3, one of the best and popular merge tools, free open source software (GPL). See here, here or here for hints of how to configure (but there is no need to configure the parameters directly, just point to kdiff3.exe and visual studio will recognise it and fill in the required parameters on its own).
Proper 3-way merging is one of those things that once you have tried, you never want to go back. In addition KDiff3 supports ignoring line ending differences, manual diff alignment, and much more.