branching

Keith Seitz keiths@redhat.com
Thu Sep 19 13:07:00 GMT 2002


On Thu, 19 Sep 2002, Kevin Buettner wrote:

> Maybe I'm being naive, but why can't you just checkout your branch,
> and then do:
> 
>     cvs update -j HEAD

Because CVS will continue to try to merge all changes into the branch 
from the time the branch was created, and you'll get tons of conflicts for 
a bunch of changes that were already merged. When you tag the mainline and 
use the two "-j" options telling CVS to merge from point A to point B, it 
only merges the new changes.

You can see this, for example, by checking out a branch and doing an 
update of a single file, once with just "-j HEAD" and once with "-j OLD -j 
NEW". For example, on my interpreter branch, valops.c was taken from 
version 1.59. When I do "cvs -q update -j HEAD" on this file, it says 
"Merging differences between 1.59 and 1.75 into valops.c". Well, I've 
already merged through version 1.69 previously, and now there are 
conflicts in the file. But when I use "-j OLD" "-j NEW", it merges only 
between 1.69 and 1.75 with no conflicts.

FWIW, David, your procedure is exactly the procedure that I've been using 
in my interpreter branch.

Keith




More information about the Gdb mailing list