notlkk
notlkk

Reputation: 1231

Creating a New Project with the Correct Process Template While Keeping the Branching Structure

Since our existing project in TFS2010 has a wrong process template, I'm trying to create a new project with the correct process template and use TFS Integration Platform to migrate all work items and version history over to the new one.

However, I'm not quite sure how to migrate all the code over with the current branching structure. Here's our current branching structure:

Main --> Dev

Main --> Release

What I want is after I moved everything from the existing project to new, I can still maintain the same branching structure:

New Main --> New Dev

New Main --> New Release

The questions are:

  1. How do I move all the code from the existing project to the new one? Do I branch like this:

    Main --> New Main

    Dev --> New Dev

  2. How do I create the relationship between New Main and New Dev?

  3. If I use branching like Main --> New Main to bring the code over to the new project, how do I remove the branch relationship between them afterwards (since I'll retire the old project eventually I don't want people to accidentally merge between the old and new project).

Upvotes: 2

Views: 212

Answers (1)

Nock
Nock

Reputation: 6609

Ok, I give a shot:

Solution 1:

SOURCE CONTROL

  • Create a new Team Project with the "good" process template
  • Create a "New Main" branch derived from "Main"
  • Create a "New Dev" branch derived from New Main, so the same for "New Release"
  • Merge from "Dev" to "New Dev" accepting the source version in case of conflict. Do the same for "New Release". You won't keep the history in the "New Dev/Release" branches, you'll have to look into their base branch when you'll need to.

WORK ITEM

I'd better use Excel to create the Work Items, I'll first set the query that list all the Work Item I want to copy, display the field I care about, then copy the whole thing (with some mapping if needed) into another spreadsheet connected to the new Team Project, then save everything to create the new work items.

You can do that if: - you have a reasonable amount of Work Item (you're the one to judge, depending on your motivation ;)) - you don't care about the history (revisions) of a work item. - you're lazy and don't want to use the migration toolkit (or if it fits your needs).

Solution 2:

In place upgrade of the Process Template, you can do that, but it's mainly done manually.

SOURCE CONTROL

  • Nothing to do, which is the only way to keep everything intact regarding the Source Control (branches relationship, history).

WORK ITEM

  • If you want to keep some history use the Excel method I gave you earlier, make sure you got all the Work Items on Excel before adding/changing the WITs
  • Delete the all the Work Items. See here.
  • Delete the WIT (tfpt destroywitd)
  • Add the new Work Item Types.
  • Create the new ones from Excel if you want to.

SQL REPORTS

  • Delete the existing reports
  • Add the ones from the new Process Template

My Take

I'll go for Solution 2 if Source Control is the most important. Using Excel or the migration toolkit depends on the count of Work Items and if there's a lots of fields I can map...

If you go for Solution 2: BACK UP YOUR TPC before doing anything crazy! (I assume you're in TFS 2010)

Upvotes: 2

Related Questions