user508108
user508108

Reputation: 11

TFS 2010 Hotfix Branch/Merge Strategy without baseless merge?

I am trying to understand how to work with branching and merging in Team Foundation Server 2010. The strategy below is for a web development team.

My idea is to have 5 folders. The Main folder, a Development folder, a QA folder, Production folder and a Hotfix folder. The Main folder will only consist of the Main Branch. The developer will either work directly in the Main Branch or create a new branch in the Development folder and then merge back into the Main Branch when done. When we want to create a release version we promote the Main Branch to a QA 1.0.0 Branch. When that branch is stable we promote that branch to a Production Branch 1.0.0. The Production Branch becomes read only, and the QA branch then will be merge back to the Main Branch. We also use the QA 1.0.0 Branch to for example branching Hotfixes. So the example here is that after the QA Branch goes to Production we find some bugs. We then promote the QA Branch 1.0.0 to Hotfix 1.0.1 Branch. When the Hotfix Branch is stable we promote it to a Production Branch 1.0.1. When a new bug is found in the Production 1.0.1 Branch we create a new Hotfix 1.0.2 Branch from Hotfix 1.0.1 Branch. When that branch is stable we promote that branch to Production Branch 1.0.2. All this works well in Team Foundation Server 2010.

The problem I have and don't know how to solve in a good way in TFS 2010 is how to promote the Hotfix to the Main Branch. I don't want to merge my Hotfix into the QA 1.0.0 Branch since I might need to create a different Hotfix for a different customer from the QA Branch 1.0.0. So I need to merge the Hotfix 1.0.1 Branch directly into the Main Branch.

I understand that I can solve it with a baseless merge using the command line tool. Is this the only way to go? Are there any other better suggestions how to solve what I want to accomplish,? UI tools? I would also appreciate any input if the branching/merging strategy I want to use somehow could be improved.

Upvotes: 1

Views: 1223

Answers (1)

Richard Banks
Richard Banks

Reputation: 12546

I understand why don't you want to merge back through the QA branch, but I think that comes from assuming you have to branch from the latest revision. If you need to create a second hot fix you can always branch from the original version of QA 1.0.0.0, not the latest version using an older version of the code. You don't always have to branch from the tip.

Upvotes: 1

Related Questions