This project has moved and is read-only. For the latest updates, please go here.

Cumulative and non cumulative hotfixes

Sep 7, 2012 at 10:03 AM

Hello,

I'm implementing a branching scenario in our TFS project. Here is the basic plan :

Dev <-> Patch <-> Hotfixes

Dev is branched to a "Patch" branch each major(X.X.0.0). A designated "Patch" branch contains all the patches versions (..X.0) for the associated major. Finally I can branch "Patch" from one of its version to create a hotfix (...X).

It seems to work well for 95% of my needs but sometimes I have to create a hotfix which contains changes of some previous hotfixes. With my scenario I  can't easily do that. Is there any possibility or is it some bizarre need :) ?

Sep 7, 2012 at 4:44 PM

Which branch is your trunk? Is it what you label as Dev?  The trunk or main branch would be the root of all other branches, and the place to which you do reverse integrations.

Do you ever do reverse integrations to capture the fixes represented by your hot fixes? 

Sep 7, 2012 at 6:38 PM

Yes "Dev" is my trunk ans is the root of all other branches. A hotfix is always RI in "Patch" and then in "Dev".

I was thinking of a cumulative branch of hotfixes for each version of patch and then branch it to actually make a patch, but I couldn't select particular hotfixes to make a "mix".

From what I read a hotfix is, most of the time, targetting one customer but how do you allow them to install several hotfixes without losing changes from previous one (like Microsoft's KB). 

Sep 7, 2012 at 7:00 PM

I am confused. You say you Reverse Integrate(RI) all hotfixes back to Patch. So Patch accumulates every hotfix. But you say you cannot get previous hotfixes in subsequent ones. If you are doing RI from each Hotfix back to Patch and Dev, then when you make a branch from Patch for a future hotfix, it should have all previous hot fixes.  Are you doing RI for every hotfix or not? Is your branch design a proposed theoretical one or one you have been actually using it for some time? 

Also, I am not clear on your hotfix approach. Are you sending the customer an entire package of the product with a special fix embedded in it? Or a piece of add-on code that will modify a base installation. Those are drastically different approaches and the final result of all this depends on the answer to both of these questions: whether you RI hot fixes, and how you deploy them.

If you reveal a little about your underlying technology platform (like WIndows Forms vs ASP.Net web forms, etc...) it may help.

Sep 7, 2012 at 7:25 PM

Thanks for your help and I'll try to explain the best I can our process. First of all our branch design is quite theoretical at the moment.

Then yes, every hotfix is RI in the "Patch" branch in its current version (we may have 4 or 5 patch version of a major). When I make a hotfix I can only branch "Patch" from the version to fix. Let say 5.2.3.1 is a hotfix of 5.2.3.0 (this is our non-standard way of versionning), this fix is then RI in "Patch" (which can be in developpement for 5.2.4.0 or further). I'd like to be able to make other fixes with changes of 5.2.3.1 but I can't branch "Patch" from its latest version for obvious reasons.

Our project is based on ASP .NET web forms and consists of several DLL and other ressources. We aren't always sending a complete new setup of the software but it may happen for easy replacement.

Sep 8, 2012 at 12:03 AM
I suggest you look at the "Branching and Merging Guide.pdf" in the download and closely study the Standard and Advanced plans. It sounds as if one of them would serve you well. Keep in mind that you can usually change your branching strategy if it does not work for you. You can also try them out in a sandbox if you are really nervous.

On Fri, Sep 7, 2012 at 1:25 PM, msauvaget <notifications@codeplex.com> wrote:

From: msauvaget

Thanks for your help and I'll try to explain the best I can our process. First of all our branch design is quite theoretical at the moment.

Then yes, every hotfix is RI in the "Patch" branch in its current version (we may have 4 or 5 patch version of a major). When I make a hotfix I can only branch "Patch" from the version to fix. Let say 5.2.3.1 is a hotfix of 5.2.3.0 (this is our non-standard way of versionning), this fix is then RI in "Patch" (which can be in developpement for 5.2.4.0 or further). I'd like to be able to make other fixes with changes of 5.2.3.1 but I can't branch "Patch" from its latest version for obvious reasons.

Our project is based on ASP .NET web forms and consists of several DLL and other ressources. We aren't always sending a complete new setup of the software but it may happen for easy replacement.

Read the full discussion online.

To add a post to this discussion, reply to this email (vsarbranchingguide@discussions.codeplex.com)

To start a new discussion for this project, email vsarbranchingguide@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe or change your settings on codePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at codeplex.com




--
David Kreth Allen
612-374-1119