TFS Integration Tools – Can I migrate all work items from one team project collection to another?

This blog post summarises the test results in response to the MSDN Forum post: Migrate ALL work items (for all projects in team collections), whereby my understanding of the forum post was targeting scenario 3 below.

Scenario 1 – Migrate all Work Items from a team project collection using a 1:1 team project relationship

Session_1-1

Answer to this one is YES, this is a standard and supported scenarios when using the Team Foundation Server Integration Tools. You can create one session group with multiple sessions (manual configuration file tweaking) or perform the migration team project by team project, each configured in its own session, within a session group.

Scenario 2 – Migrate all Work Items from a team project collection using a many:1 team project relationship

Session_N-1

Answer to this one is YES, this is a standard and supported scenarios when using the Team Foundation Server Integration Tools.

Scenario 3 – Migrate all Work Items from a team project collection using a 1:1 team project relationship, but tweaking with the WIT query to read all WIT from source team project collection

Session_N1-1

This one required some testing to confirm the immediate response that popped up in my mind, which I performed as follows:

  • Create a testing Virtual Machine and create two team project collections.
  • Create two test team projects in team project collection A and one team project in team project collection B.
  • Create a migration session which looks for all Work Items of types used in source.
    SessionConfig
  • Cross my fingers and run the migration
    SessionProgress

The results show that even when we remove all filters from the WIT query, the migration is still tied to the configured team project and only the WIT data from the configured source team project are processed. Only WITs from the TiP_POC_Test_2 team project were migrated.
SessionResults

Answer to this one is NO, when using the tools out of the box.

You could customize the out-of-the-box WIT Adapter so as not to be bound to the source team project, but this is NOT recommended.

Take NOTE of limitation!

  • Source and Target team project process templates need to be identical, otherwise custom field and value mapping must be included with the session configuration.
  • Limited to migrating only Version Control items, Work Items, and the links between them.
  • Work Item IDs and Changeset numbers are not preserved during migration and new IDs are assigned sequentially as items are migrated.
  • Timestamps on work item revisions and changesets will be updated to the time of migration.
  • Work Items of type Test Case are not migrated completely.

If you are looking at moving or splitting team project collections, we recommend that you explore the following first: