Hi folks -

We're trying to decide on a simple branching strategy for our team.  So far
here's what we're planning - please comment on the approach to help us
start small and grow as we learn:

So far, we only use CvS to version individual files (checkout, work on
files, check them back in when you've tested your changes) - currently we
don't use any TAGs, or branches at all.  This works ok but we'd like to
improve that process.  Here's the proposed flow:

Every Wednesday we have scheduled delivery date.  I'm thinking that just
prior to the final build create a /Branch  - I'm thinking of it as a
special TAG that marks the completion of that development cycle.  Do the
build using that /Branch, and deploy it accross the infrastructure (DEV,
QUAL, PROD, respectively).

>From that point forward, any code fixes should be done to the /Branch code.
Any NEW development should continue on the /main trunk (and hopefully there
won't be many mistakes - that I'm sure would complicate this for us).

Thus we'd have an early branch each time we build/deploy and any fixes to
that code base would be performed on that /Branch, while new development
would continue in parallel on /trunk.  What I'm not sure about is:  if we
do have fixes when do we need to merge them into the /main trunk code?
What happens if we gave fixes on the /Branch, we merge them into the /trunk
and we have OTHER fixes to make to the prior release?

Your comments will be appreciated -

THanks,
James

Reply via email to