I'm working with a designer on a Xamarin.Android application and we are having trouble keeping in sync. We use Mercurial, but my question should be as relevant for Git or any other DVCS. My .hgignore file looks like this:
^bin/
^obj/
^Components/
\.keystore$
I am unsure about these files:
^Resources/Resource.designer.cs
\.sln$
\.userprefs$
\.csproj$
Thanks!
Update
Found this great community wiki that confirmed excluding *.pidb and
*.userprefs and by implication confirms including *.sln and *.csproj
See: .gitignore for Visual Studio Projects and Solutions
I'm not sold on including the Resource.designer.cs file. It gets automatically regenerated after changes to resources and it includes this notice:
// ------------------------------------------------------------------------------
// <autogenerated>
// This code was generated by a tool.
// Mono Runtime Version: 4.0.30319.17020
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </autogenerated>
// ------------------------------------------------------------------------------
With a merge you might reject an id name change in a layout file, but accept this file containing the new name.