Is it a best practice to commit a .sln file to source control? When is it appropriate or inappropriate to do so?
Update There were several good poin
Under most circumstances, it's a good idea to commit .sln files to source control.
If your .sln files are generated by another tool (such as CMake) then it's probably inappropriate to put them into source control.
We keep or solution files in TFS Version Control. But since or main solution is really large, most developers have a personal solution containing only what they need. The main solution file is mostly used by the build server.
Yes - Everything used to generate your product should be in source control.