by Julian Davchev
on Stack Overflow
See other posts from Stack Overflow
or by Julian Davchev
Published on 2010-04-18T09:37:12Z Indexed on 2010/04/18 9:43 UTC
Read the original article Hit count: 198
Hi I've read similar questions regarding that but still feel the need to ask a question. I have scenario where we have lots of tiny "features" pending for approval. I generally see two approaches.
1.Keep trunk solid and have tons of branches for each tiny "feature". Basically every new thingy is a branch.
- Might become nightmare to support so many branches no matter how small a change. Keeping all branches in sync etc etc.
- Worst con I see in this is setup of test system so one can easily examine changes to approve (basically need to support all branches which seems insane).
- Seemningly easy once approved a branch to be merged back to trunk and new release to be tagged and deployed.
2.For big features a branch is released and for small changes all goes in trunk(relatively stable) directly.
- Easier to set test system as most of the time all will be directly visible. For big features should be easy to maintain separate branch on test.
- Don't really see how release will go. I will not be able to basically release one part of trunk This would involve cherrypicking which is crazy to follow. Other approach is I just enforce that after some time (a week or so) all small features need to be approved so they can deployed before giving new tasks. I just create release branch and either all or none of small features are going live. This will be some fun discussion with head people.
I guess having lots of small pending stuff is very problematic to follow technically.
© Stack Overflow or respective owner