RFC: Moving C to its own directory
David O'Brien
obrien@FreeBSD.org
Sun Jun 1 20:59:00 GMT 2003
On Sun, Jun 01, 2003 at 01:10:34PM -0700, Russ Allbery wrote:
> Phil Edwards <phil@jaj.com> writes:
>
> > If we're willing to get a little underhanded, we can do the shuffling in
> > the repository directory structure itself, i.e., cp/mv the foo,v files
> > directly.
> cp avoids this, but has a different problem of giving you both the old and
> the new locations when you check out an old version. What you have to do
> is cp the ,v files and then remove all the old tags from the new ,v files,
> and then cvs remove all of the old files from the mainline. It's messy,
> ugly work with RCS file internals.
Its not messy, and not hard to do.
1. copy all the live ,v files to new location
2. prepend "old_" to all the tags of the ,v files in the new location
(we use a script to do this) You don't want to remove the tags as
they are part of the valuable history. Doing a repo copy vs. just
checking in a copy of the latest sources is almost useless w/o the
tags also.
3. make a cvs forced checking (cvs ci -f) noting the files were repo
copied and from where
4. cvs rm -f ; cvs ci the old files
The only "hole" is that "cvs co -D" will give more files than actually
existed on that date. That still won't break the build, and since GCC
tags so often, one can use "cvs co -r" instead and get the true tree of
an older date in time.
--
-- David (obrien@FreeBSD.org)
More information about the Gcc
mailing list