[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: starting over
Re: starting over
Wed, 30 Aug 2006 17:12:58 -0500
Mozilla Thunderbird 1.0.8-1.1.fc4 (X11/20060501)
Mark E. Hamilton wrote:
Huber, Robert wrote:
Dubious in this case basically means that CVS has not been used by the
various developers on the project consequently there is no confidence in
the contents of the repository and the concern is that a developer may
get a copy of old code. The code in the production area is what is used
to make changes; a personal copy is made, modified, tested and basically
put back in production.
Well, the first thing that you must address is your management problem.
As section 1.2 of the CVS manual states: "CVS is not a substitute for
management." If you have developers not committing changes to the
repository and directly updating the production area there's no way you
can guarantee that your production area is correct.
The first thing that you must do is document a development model for how
your developers should work; how to check out current code, how to
change and test it, how to commit it, and how and when to update the
production area. (If you involve the developers in this you'll have less
resistance later on.) I'm sure there are some good books on this, but
I'm not that familiar with them. Perhaps someone else here can recommend
some. You also need to get management buy-in for your model, since they
will be the big-stick when it comes to enforcing it.
You also need to select a branching model for your repository. Where I
work we use the model where development is done on the head of the
default branch, with regular branches made off of this branch for
releases. Only bug fixes are then allowed on the release branches. This
works fairly well for us, but there are other approaches. Some never
branch at all but simply tag release points (which might work well for
you,) others allow multiple development branches and merge them together
Suggested reading for the branching and dev model (where I go when I am trying
to explain it to folks around here).
"Streamed Lines: Branching Patterns for Parallel Software Development"
and "The ACME Project" "Assembling Configuration Management Environments (for
Crane Division, Naval Surface Warfare Center (NSWC Crane)
Harnessing the Power of Technology for the Warfighter