72
votes

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?

3
It's a very good question. When adding projects to the Source Control it seems to create and version the .vspscc files. If you however try to export and re-add the project to another source control, the source control wizard puts these files to the ignored list. Sadly this question has not been answered with a definite yes because... or no because... answer.Vinz

3 Answers

35
votes

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.

33
votes

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.

4
votes

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.