Question

Which files in a Visual C# Studio project don't need to be versioned?

I'm new to Visual C# Studio (actually using the Express edition, but another developer is using the full version), and we are using version control (svn).

It's acceptable to me to add the project files to the repository, since this repo is just for the two of us using Visual C# Studio. But it feels like there are some irrelevant files in there. Can someone familiar with Visual C# Studio project files tell me which files can safely be svn:ignored?

Some suspect files:

  • project.csproj
  • project.csproj.Debug.cachefile
  • project.csproj.user
  • project.sln
  • project.suo
  • Content\Content.contentproj

I'm sure the .sln is required, but what's this .suo? and the .csproj? Can/should any of these be generated by Visual C# Studio on loading a project?

 45  13999  45
1 Jan 1970

Solution

 15

.csproj defines the project structure. It is vital.

This is what I add to my global ignore list in Tortoise SVN:

*.suo *.user bin obj *.pdb *.cache *_svn *.svn *.suo *.user *.build-res TestResults _ReSharper*
2009-10-29