This is the sixth blog post in a series about Upgrade and Migration for TFS.
Thus far, all of the recommended approaches for scenarios involving migrations of data between TFS 2010 servers have started with upgrade. For some customers, upgrade may not be an option (in the cases where it is an option, it is strongly recommended):
“I have Team Projects that I need to migrate from my existing TFS 2008 server to another TFS server, but I don’t want to upgrade”
It is important to understand that upgrading a TFS server does not mean that users are required to upgrade their Visual Studio clients to continue using TFS. Along with the TFS 2010 release two client compatibility GDRs have been released to ensure that TFS 2005 and 2008 clients are compatible with TFS 2010 servers. For more information on the compatibility releases, please see the blog post that details the Compatibility Matrix for TFS 2010 and Team Explorer 2008 and 2005.
If upgrading to TFS 2010 is not an option, the recommendation for moving Team Projects is to copy the latest versions to the destination server, leaving the history behind on the original server. Copying the tip versions is a relatively low cost migration option, and involves fairly simple procedures for version control and work item tracking data. The major disadvantages of this approach are the loss of historical changes, date-time information, and changeset and work item IDs.
For version control, a workspace that maps all files for a Team Project can be used to get the latest copy of all files and folders to a client machine. Those files can then be added to the new Team Project on the destination server. For details on using version control, see the MSDN documentation to Create a Workspace and Get Files and for Placing Files under Version Control.
To move work item tracking data, Excel can be used to export the work items that are to be moved to the new Team Project. A query can be created that selects the work items that are desired to be moved to a new server, and those items can be opened in a bound Excel sheet. That Excel sheet can later be bound to a different TFS server and those work items can be added to the destination Team Project. For more information, see the MSDN documentation for Managing Work Items Using Office Excel Bound to Team Foundation Server.