If you haven’t yet heard, the Release Candidate (RC) version of Visual Studio 2010 is now available to MSDN Subscribers. Personally, I was waiting for this release to move my primary development environment over to the new version. Overall, the installation and setup process was easy enough on two of my development machines. The biggest problems I ran into were related to migrating my dozen or so development projects from Visual SourceSafe to Team Foundation Server. I know I’m a bit behind the curve, but I’m an independent developer, and I was actually happy enough with VSS.
Using VSSConverter
The VSSConverter.exe utility is Microsoft’s command-line tool for migrating Visual SourceSafe repositories to Team Foundation Server. The utility includes analyze and migrate modes and is driven by XML-based configuration files. The process was simple enough and is documented in the following MSDN articles:
- Migrating from Visual SourceSafe
- Walkthrough: Preparing to Migrate from Visual SourceSafe to Team Foundation
- Walkthrough: Migrating from Visual SourceSafe to Team Foundation
- How to: Migrate Source Control Bindings from Visual SourceSafe
Migration Errors
The basic process went well until I got to the step of actually performing the migration. That’s when I encountered the following dreaded TF31002 error:
I checked my server name, port, and other settings numerous times but still couldn’t get it to work. Web searches provided some basic troubleshooting information, but nothing relevant to my issue. All diagnostics that I ran (including the Best Practices Analyzer from the Team Foundation Server Power Tools) reported that everything was OK.
The Solution…
I finally stumbled upon the solution in an old bug reported via Microsoft Connect. The defect report is titled VSSConverter cannot connect to the Team Foundation Server and offers the following problem description and solution:
When trying to migrate a Source Safe database to TFS2010 the VSSConverter tool exits with the following error:
TF60070: Unable to connect to the Team Foundation Server: ‘http://ts01:8080/’. Please ensure that the Team Foundation Server exists and try again.
The Team Foundation Server exists but at http://ts01:8080/tfs (default installation) The VSSConverter tool is unable to access this location.UPDATE!
There is a new configuration option in the TeamFoundationServer element to specify the collection to which the sourcesafe database should be merged. It’s nowhere to be found in the documentation yet.
The solution is to add collection="tfs/DefaultCollection" to the TeamFoundationServer to specify which collection should be used.
After adding the “collection=” attribute, the migration worked flawlessly. It took about an hour to transfer all of my code and versions, but everything looks good now. The migration process could be simpler, but (if I’m lucky), I’ll only have to do this once. I hope this helps some of you that might have run into the same problem.
#1 by James on April 22, 2010 - 9:59 am
Quote
Fantastic – i had exactly this problem, and there is no documentation anywhere for it. You are a lifesaver!
#2 by derrick on May 19, 2010 - 9:37 am
Quote
Hi!
I need this, but after adding the attrib in, am getting an xml validation error? Any suggestions?
TF60089: File settings.xml is in improper xml format. TF60095: Validation failed for file ‘settings.xml’. Line: 11, Col: 75, Error: The ‘collection’ attribute is not declared.
Thanks in advance!
#3 by Anil Desai on May 19, 2010 - 10:17 am
Quote
Derrick: That sounds like it’s possibly a formatting error in the XML attribute you’re adding (unless something has changed with the RTM versions of Visual Studio / TFS 2010). I deleted my old migration batch files, so I don’t have a sample to post, but the syntax documented in the bug report (https://connect.microsoft.com/VisualStudio/feedback/details/500032/vssconverter-cannot-connect-to-the-team-foundation-server?wa=wsignin1.0) and in MSDN should be correct. If that doesn’t work, please post the relevant section of the XML file here, and I’ll see if I can figure out the problem.
– Anil
#4 by Stu on November 8, 2010 - 7:32 pm
Quote
Derrick – did you ever solve this one?
I still only get the same message as you reported – “the collection attribute is not declared” – any ideas – link below is broken 🙁
#5 by Swati on March 18, 2011 - 5:04 am
Quote
Hi
I am getting the same error and am really struggling to resolve it. can you please help?
Thanks
Swati
#6 by Anil Desai on March 18, 2011 - 8:32 am
Quote
Swati: Did you try the above troubleshooting steps and did they not work? After adding the collection attribute to my command-line entries, I was able to get the migration to succeed. Please provide more information if you’re still having problems. – Anil
#7 by Andrew Werber on January 26, 2012 - 1:38 am
Quote
I have TFS 2010, the SQL server database (a SQl Server 2008 instance) and Team explorer, and Source Safe 2005 all on the same Windows 7 machine. My login is an administrator login, and I think my login has administrator and full rights to TFS, the SQL server database and Source Safe. I can run the Analyze option for the converter. But when I try to migrate, I get error TF60071: Your user account does not have permission to connect to the Team Foundation Server. THe URL for the server is correct and has the proper collection name (the name of my collection is not DefaultCollection). How do I fix this problem???
#8 by Anil Desai on January 26, 2012 - 8:48 am
Quote
Andrew: From what you described, it does sound like you have everything configured properly for the migration. I have not run into this error before (I also have SQL and TFS running on the same Windows 7 machine), but doing a quick search on your error message seemed to turn up some potential troubleshooting steps to try. If you’re unable to find a result, I suggest posting your isuse to the Microsoft TFS Administration Forum. It looks like there are a lot of experts available to help there. I hope this helps! – Anil
#9 by Ahmad Asfour on December 16, 2012 - 3:57 am
Quote
Try download and install the SP1 Forward Compatibility Update for Team Foundation Server 2010