Why does Visual Studio check out the .vspscc file when I add a file to a project?

Visual StudioTfsProjects and-SolutionsVcs Checkout

Visual Studio Problem Overview


If I add a new file to a project under TFS source control, it will check out the project file and the corresponding .vspscc file for that project file.

The project file itself changes (to include the new file), but the .vspscc file doesn't change at all. Why bother checking it out? Is there a way to disable it from being checked out and if there is, should I?

Visual Studio Solutions


Solution 1 - Visual Studio

It gets checked out because under certain conditions it will be modified..and thus they checked it out as a matter of default. I wouldn't worry about it..it's not hurting anything, and if you disable it, it might bite you badly in the future in a bizarre way.

Solution 2 - Visual Studio

According to this post of Ben Ryan:

>Team Foundation uses these to store lists of files that have been excluded from source control. We leveraged some of the existing SCC integration layer in Visual Studio to integrate Team Foundation, and these files were one of the carryovers. I'll have to check into what the logic was in breaking out these SCC settings into separate files as opposed to putting them in the solution and project files' SCC sections.

Solution 3 - Visual Studio

This file is a holdover from past VSS/TFS implementations, like Paulo Santos posted.

On the solution level, I have found no functional use for these files. In 10 years of using TFS, I have never seen that file altered. You can delete these .VSSCC files, as I commonly do for my closed source solutions.

But if you delete the solution-level .vsscc file, you will get a non-destructive error message on the first time open of the solution file...only after a new branch is created. All subsequent solution opening will not show the error message again.

My TFS setup standards have the solution file alone in the root folder, all projects are under sub-folders. Since those .vsscc files double the number of files in my root, I always delete them.

On a project level, I leave those files, as my team never opens project files directly, only solution .SLN files.

For my team, I prefer programmer ease of opening solutions over that one-time error message.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionkenwarnerView Question on Stackoverflow
Solution 1 - Visual StudioCaladainView Answer on Stackoverflow
Solution 2 - Visual StudioPaulo SantosView Answer on Stackoverflow
Solution 3 - Visual StudioRobert J. GoodView Answer on Stackoverflow