Sunday, March 27, 2011

Removing SourceSafe Integration from Visual Studio 2008

A question was asked recently about removing SourceSafe integration from Visual Studio 6. I need to do the same with Visual Studio 2008.

Our team uses Subversion and I have installed AnkhSVN, the Subversion plug-in for VS2008 (some other members of the team use VisualSVN). I find that SourceSafe "insists" on being the integrated source control tool of choice - the setting for source control plug-in in Tools > Options > Source Control seems to reset itself every time VS2008 is closed. This is very annoying and I want to get rid of SourceSafe.

I tried running the VS2008 install with the intention of switching off (effectively uninstalling) the SourceSafe plug-in, but there is no option for it.

From stackoverflow
  • You can usually edit the *.sln file and *.??proj file with out an problems to remove these bindings. These two files are just text files so you can open them in Notepad, Wordpad, or Visual Studio.

    Just remove stuff slowly and then save and try to load.

  • Not sure if this works, but you can try:

    • Tools/Options/Source Control: set Current Source Control plug-in to "None"
    • Open the solution - hopefully it will tell you the provider is missing and give you an option to remove the bindings.
    Bert Huijben : No, this won't work when the solution is bound/connected to an SCC provider. As loading the solution will then automatically re-enable the SCC provider.
  • Visual Studio stores source control preferences in the solution and project files. To switch providers, you have to first "unbind" the old provider.

    • Select File > Source Control > Change Source Control, select the solution and all the project files, and click "Unbind."
    • Save the solution.
    • Then you can change the provider with Tools > Options > Source Control.

    Hand-editing the .sln and .proj files also works, but it's not exactly recommended.

    Bert Huijben : This is the recommended way to rebind projects. (Implementing this option in Change Source Control is a requirement in the SCC specification). Reopening the solution is not necessary. After you unbind all projects you can switch the active SCC provider in Tools -> Options -> Source Control.
    Darcy Casselman : Thanks, Bert. You're right about the restart, of course. I picked up some weird superstitions over the years dealing with Visual Studio weirdness. I'll update the answer with your suggestions.
  • Found it! MS's Help and Support site describes it, see section 2

    Add a DWORD registry key at:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SourceSafe\HideInVisualStudio
    

    Set it to 1. Restart VS2008 and the SourceSafe plug-in option is gone.

    Bert Huijben : The recommended method is File -> Source Control -> Change Sourcecontrol. Then unbind the solution and all projects. When no projects are bound you can switch SCC providers in Tools->Options without automatically reloading the solution.

0 comments:

Post a Comment