Zayko in the Net

Personal blog of Vitaly Zayko


How to permanently remove TFS Source Control association bindings?

I have faced this issue when I decided to move one of my freelance project from my own TFS to CodePlex.
To re-assign to a new Source Control, you need to remove association to old one first.

Another case when you may need this is when you renamed your TFS and your projects cannot find their code storage and you will see this warning each time you try to open these projects:

TFS is off-line warning

Here is how to remove this association:
1. Remove all *.vssscc and *.vspscc files from your Solution folders.
2. Check if your Solution *.sln file is Read-Only. Remove this flag if needed.
3. Open *.sln file in an editor. I prefer Windows Notepad for such operations.
4. Find GlobalSection(TeamFoundationVersionControl) looking as showing below and remove it begining with GlobalSection and ending with EndGlobalSection:

GlobalSection(TeamFoundationVersionControl) = preSolution
    SccNumberOfProjects = 2
    SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}
    SccTeamFoundationServer =
    SccLocalPath0 = .
    SccProjectUniqueName1 = <Your Project path and name in TFS>.csproj
    SccProjectName1 = <Project Name>
    SccLocalPath1 = <Project Path>

5. Save and close your Solution file.
6. Go ahead and open this Solution in Visual Studio IDE as usual.
7. If you will get IDE warning similar as shown below, just select "Permanently remove source control association bindings".

Permanently remove a source control association

That's it! Now you can associate your code with a new TFS Project.
P.S. I tested this on VS/TFS 2010. Not sure if this works with older versions.

Technorati Tags: