При совместном использовании решения между Xamarin Studio и Visual Studio изменения в решении/проектах приводят к неожиданным результатам. Исходный текст файлов .sln/.project имеет неожиданные изменения, например.
- UUID изменились с нижнего на верхний.
- Переупорядочение строк в файле .sln
- Изменено "ToolsVersion"
- Изменена версия "Visual Studio"
- Другие изменения, такие как изменение разрыва строки, изменили "true" на "True",...
Это, например, происходит при смене проекта запуска, добавлении ссылочных проектов, построении решения.
Эти изменения приводят к "фиксации пинг-понга" между Xamarin Studio и пользователями Visual Studio и усложняют слияние. Мы столкнулись с этой проблемой с Xamarin Studio 5.5.4 и обновлением Visual Studio 2013 4. Хранилище https://github.com/perpetual-mobile/SharingXamarinSolution содержит примеры. В этой статье описывается поток http://forums.xamarin.com/discussion/comment/95851.
Как избежать этой проблемы? Можно ли предотвратить это при использовании только Xamarin Studio и Visual Studio? Или нам нужен дополнительный инструмент (например, cmake)?