Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 7 Jun 1996 17:06:47 -0600
From:      Nate Williams <nate@sri.MT.net>
To:        "Jordan K. Hubbard" <jkh@time.cdrom.com>
Cc:        Nate Williams <nate@sri.MT.net>, hackers@freebsd.org (FreeBSD Hackers), freebsd-stable@freebsd.org (FreeBSD Stable Users), FreeBSD-current@freebsd.org (FreeBSD current users)
Subject:   Re: The -stable problem: my view 
Message-ID:  <199606072306.RAA01251@rocky.sri.MT.net>
In-Reply-To: <16852.834188423@time.cdrom.com>
References:  <199606071529.JAA29241@rocky.sri.MT.net> <16852.834188423@time.cdrom.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> > doing a *ton* of work in both -stable and -current.  However, it's a
> > *LOT* of work.  However, I don't think this has anything to do with CVS,
> > but has to do with the diverging of the trees.  P3 may make it easier to
> > do as far as resources, but the actual work of 'merging' in changes to
> > both won't be any easier.  Building the patches is the hard work IMHO,
> 
> I think you're forgetting the problem with cvs where:
> 
> 1. You make a change in -release.
> 2. You merge it into -stable.
> 3. You make another change in -release.
> 4. You go to do another merge into -stable and wind up with a whole *mess*
>    of conflicts.  `cvs update -j' is NOT a decent merge tool!

I don't use 'cvs update -j' to merge it into -stable.  'merge' doesn't
work when you've already merged.  What *I* do is this, which is a bit
more work but does do the job 95% of the time.

% cvs log file-to-merge.
(Figure out which revision(s) needs to go into the branch).
% cvs diff -c -r1.A -r1.B file-to-merge > cdif
% cvs update -r BRANCH_TAG 
% patch file-to-merge < cdif
....
% emacs -nw file-to-merge file-to-merge.rej
....
% cvs diff -bu file-to-merge
[ Review the merged patch, make sure it's ok, build/test/etc. on my box ]
% cvs commit file-to-merge

This is alot of work, but it *does* the job.  Whole-scale merging of
trees and directories doesn't work when the trees have already been
merged.  CVS doesn't operate on the principal of 'everlasting' branches
that keep getting 'merges' happen to them.  As I understand the CVS
model, if we merged everything into -stable, then we should build a new
branch at that point in -current since the files are merged.

Merges are 'merges', not 'sort of merges'.


Nate



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199606072306.RAA01251>