Tuesday, May 7, 2013

Migrate all your project work items to another project : Total TFS Migration Tool

As I mentioned in my first post of  Creating a Test Plans and Cases Migration Tool For TFSWe had to move some team projects from TFS 2010 Server to a newly created TFS 2012 Server. Usually You can restore all your projects by using a tfs backup. But there can be many reasons that will cause you to need a migration tool. In our case our database and backup are both have corrupted. Therefore we were unable to do a restore from backup.

Migration involves moving all source files,work items, attachments, links and team queries. Though moving source files is an easy task, moving work items is not an easy feat. This is due to many reasons. Such as TFS 2010 use the Scrum 1.0 template and TFS 2012  use Scrum 2.0 template(Update 2 use 2.2 template). Migration is done through the APIs of TFS by using external tools, and is a lossy data transfer. There were some migration tools but  it all have certain limitations; such as not supporting test case migration, permission, etc. Therefore we decided to built a custom tool that match our need.

After we finished building a custom tool to match our needs, we thought of developing a generic tool that might help others who have the same need; as there isn't a generic tool to do this. Building a total generic tool for TFS Migration is almost impossible as every company that use TFS as a source control software and as a team management software, have customized it to suit their needs and development methodologies. But we tried to make it as generic as we can. But as the source code is available, anyone can customize this tool to match their requirements. The tool is available at  CodePlex -  Total TFS Migration Tool.



Scope of the tool:
At this point in time, the TFS Migration Tool is scoped to only support the following TFS features:
  • Work Item Migration - This includes the migration of all work items, fields, in-use areas, iterations, links, attachments, shared queries.
  • Test Plan Migration – This includes migration of all test plans and test suits.


Limitations:
  • No Version Control – Project source code will not be transferred.
  • Work item history will not be transferred.

Features:
  • Copy custom fields of relevant work item types in source project to target project. 
  • Copy workflows from source TFS project to target TFS project.
  • Map the mismatched source fields with target fields.
  • Logging mechanism to track entire migration process

How to use the tool is described in full detail in the documentation. Feedback from end users will also be critical to make this more generic, so please help us by sharing your experiences and feedback.

Note:
Tool can be used to copy custom fields and work flows, but if you prefer you can manually copy them using Process Editor and ignore those tabs in the tool as those features are not required by the tool.

10 comments:

  1. Hi! Nice tool. But there is no installer 1.1

    ReplyDelete
    Replies
    1. sorry my mistake. corrected it now. you can download it from downloads section of project's codeplex site. Thanks for the info Paraglider...

      Delete
  2. Hi Asanka,

    Very nice concept. Can you please clarify whether after the migration ID of the work items remain same or do they get new ID?

    ReplyDelete
    Replies
    1. They get new IDs as they are in a different one.

      Delete
    2. You could even get the mapping in the old workitems ids and the news. There is a txt file created in the 'map' folder of the application.

      Delete
    3. ha ya... I forgot that. That file is named by using target and destination project names. Thanks Phil for reminding it. Even there is a log file where you can see the progress and errors. It's in the Log Folder.

      Delete
  3. Hi, sorry.
    Does this do a complete migration, eg source code, work items, test cases etc.. or does the source code have to be done manually?
    Thanks

    ReplyDelete
    Replies
    1. Yes you have to migrate source code manually. All the other things will be migrated.

      Delete
  4. Hello Asanka,
    Thanks for effort for providing this tool on codeplex.
    I was able to migrate WI for TFS 2013 Update 5 . But I've one problem for Test Case .
    I can see WIs for Test Plan /Cases got migrated successfully but when I open Test plan in TWA I don't see Test suite listed thus it is not showing associated Test cases. Any help would be appreciated. Thanks Jas

    ReplyDelete
  5. Hi Asanka,
    I tried to open the tool after filling source and destination project. Then I clicked connection, the tool got error and closed it.
    do you know what did i miss when installing?
    Thanks.

    ReplyDelete