Friday, March 30, 2012 1:53 PM
I'm seeking some guidance as to whether or not our branching implementation is correct, and how to address a specific scenario.
Currently we have an application that is released to our customers. Call this v1. We are doing future development which has not been released yet into v2. This is a small development team with a minimal amount of users. We are not expecting an official hot-fix / service pack to be launched, so we tried the basic strategy.
Our current setup is:
Main --> DevV1
As I have said, v1 is released. V2 is actively being developed. Now, consider a show-stopping defect in V1. We need to fix it immediately. Where should the fix be made? Is it under DevV1, which is then put into Main -> ProdV1 for release (and eventually merged into DevV2)? Or should the fix be put into PRODV1 (where it is released) and pushed to Main -> DevV1 and then merged back into Main for merging with DevV2?
Also, should there be multiple Mains for each version? (MainV1, MainV2) for a project this size? or can we get away with a single Main?
Any insight would be welcome.
(Edit: originally posted the same scenario twice.. this is fixed now)
- Edited by FearTheDonut Friday, March 30, 2012 2:08 PM errata
Friday, March 30, 2012 2:54 PM
First, I don't think you need DevV2 at all, if I were you I will only use one Dev, no version for Dev branch, so if this happen, that's mean when you fix a bug you will fix it in ProdV1 and then merge back to main and from main to Dev branch, so now you have fixed your old version V1 and fixed your Dev too.
I also recommended don't create a real branch until you need it, so you just create a label and when you need to start fix a bug you will create the branch.
You can see more details on branch and merge strategies on the following link:We are volunteers, if the reply help you mark it as your answer. thanks!!
Friday, March 30, 2012 3:07 PM
Thanks for the reply.
I have reviewed the branching guide - I was attempting to follow the "Basic" Branch plan, which calls for a development and release branches from Main. This is what I've attempted to do with the versions: 1.5 and 2.0 in order to split versions.
Are you saying that we don't need seperate versions for the Dev/Prod split? If so, what would be recommended if we needed to get / alter source code from 1.5 once we're well past 2.0 development?
Again, thanks for the response.
Friday, March 30, 2012 3:51 PMSorry I can't understand your question very well, anyway, all I want to say, you will only need another Dev branch when you want to make parallel development at time, but as I understand from you scenario, you don't, or maybe I missed understand what you are trying to explain.We are volunteers, if the reply help you mark it as your answer. thanks!!