I created a new little tool. It removes all SourceSafe bindings from a selected folder, including subfolders. It displays the file names, and won’t delete unless the checkbox is checked so you can see if any important files would be deleted. There is no option to selectively remove files from the list to be deleted.
SourceSafe bindings are plain text files ending in scc, either .scc or .vssscc, but the pattern matches any file with an extension ending in *scc. You can change the pattern match in the application config file (need to include the * for wildcard matches).
Download the SourceSafe Binding Remover from GotDotNet Workspaces.
Felix – if possible, I would remove all files from StarTeam. Then I would run the SourceSafeBindingRemover tool on the solution. Then I’d use whatever integration StarTeam has with Visual Studio to add the solution to source control. That should be it!
Thanks for the reply. Rephrasing my question, what steps did you take when migrating Providers (regardless of the destination tool)?
I’m not sure how the other tools work, but do you know if the other tools copy the vssscc files if running some kind of import tool from VSS to other provider?
As for StarTeam, the database migration tool copies everything that was in the VSS database. So we currently have vssscc files in the new StarTeam database, but of course they still reflect the old VSS database. I’m thinking I might need to check these out of StarTeam and delete the files from the repository before rebinding the .NET projects to the new repository.
Felix – I don’t know as I’ve never used StarTeam. I know that my binding remover will remove the sourcesafe bindings.
We’re changing our Source tool to StarTeam here at work, and I ran into your article. Any ideas on the steps you need to take to repoint to a new system? We’ve copied our VSS database to StarTeam on the server side and that is now complete. But now I’m running into the problem of the solution/project files still pointing to VSS and that’s how I found your blog.
Do I get the latest version from StarTeam (with the sln and proj files still pointing to VSS), then run your utility to remove the bindings? Also, do you know when you change the Registry to point to the new provider (in your case Subversion)? Here’s what I’ve come up with but I’m not sure if it’s right:
1. Get Latest version from StarTeam (the newly migrated database)
2. Run your utility to remove the bindings
3. Change the registry to have the default Provider point to StarTeam
4. Open the solution file and rebind to StarTeam through VS.NET?
Thanks,
Felix
Yeah getting rid of SourceSafe and moving to Subversion is the best thing we’ve done.
Philip –
I like Dave’s tool because:
1. it tweaks the bindings in the solution and project files,
2. it is a little more polished than mine (some error handling facility
I don’t like his tool:
1. because it’s command line,
2. it doesn’t give me the opportunity to check what files are being changed first.
You may want to see the tool Dave Bettin (http://davebettin.com/me) release a few weeks ago to "nuke source safe" cruft – note that it also removes the bindings from the c# and vb.net project files as well.
http://davebettin.com/me/archive/2004/03/27/304.aspx
Jason – yeah, if you want to switch to another version-control utility and you don’t want the SourceSafe cruft.
Another use is when you want to rearrange your solution file, folder, and project setup (which is what I’m doing) and you need to remove the current binding information to do so.
Seems like a nice utility Darrell but when would you want to remove all the sourcesafe bindings from your folders? Do you have any scenarios for its use?
Just looking to be educated on the subject is all.