There are different ways to remove the Visual SourceSafe control from a controlled solution, and the easiest way is to use the built-in Unbind feature in Visual Studio: select the solution from the Solution Explorer, then open File menu and select “Source Control” then “Change Source Control”. When Change Source Control window loads up, check all the projects in the project list and click “Unbind”, then confirm your action and finally exit out. Now the solution is not controlled by the SourceSafe.
However, SourceSafe leave many footprints in your solution, for example, it leaves three files in each project folder: mssccprj.scc (SourceSafe Status file), vssver.scc (SourceSafe Status file), and projectname.vbproj.vspscc (Visual Studio Source Control Project Metadata file), and it also leaves a vssver.scc file for each of other folders, and also some other footprints in the project file and the solution file. Although those footprints will not harm your application, it will cause problem when you re-add the solution to the source control but under a different source control project name (for any reason). So I suggest you to remove those footprints once you remove/unbind the source control from the solution.
Many people have posted articles about how to remove those footprints, here are two of them if you Google the Internet:
- Removing SourceSafe dependencies from a solution/project by Brian Carroll
Their methods work for the most of the time and for most scenarios, but they all failed to mention two very commonly used projects: the deployment project and the report project. If you have these two projects in your solution, then you will need to remember to remove the SourceSafe footprints from them too. Otherwise, when you open your solution after you follow their instructions, you will get an “Unable to initialize source control” error. This error will not stop you from opening your solution or project, but it is surely annoying. It is caused by the fact that there are still SourceSafe footprints in your solution, in this case, in your Deployment project and Report project.
Remove SourceSafe control footprints from the deployment project
Open DeploymentProjectName.vbproj (VB.NET, .csproj for C#) with a text editor (i.e. Notepad++), then remove the following lines:
“SccProjectName” = “8:”
“SccLocalPath” = “8:”
“SccAuxPath” = “8:”
“SccProvider” = “8:”
Don’t forget to save the file.
Remove SourceSafe control footprints from the Report project
Open YourReportProjectName.rptproj with a text editor, then remove the the <State> section which includes a <SourceControl> block:
From the above screen shots you will see that the built-in Unbind feature only removes the values of the source control properties, such as SccProjectName, SccLocalPath, AuxPath, Provider, etc, but it does not remove those sections. That is why when you try to re-add the solution to the source control, you get the “Unable to initialize source control” error. After you remove the footprints from the Deployment project and the Report project, you should be able to open your solution without any problems, just like a clean solution.