Date: 24 Dec 1995 14:58:50 +0800 From: peter@haywire.dialix.com (Peter Wemm) To: freebsd-current@freebsd.org Subject: Re: cvs fails to remove no-longer-present files Message-ID: <4bitna$d6q$1@haywire.DIALix.COM> References: <199512230435.PAA07671@godzilla.zeta.org.au>, <199512230438.UAA00172@corbin.Root.COM>
next in thread | previous in thread | raw e-mail | index | archive | help
davidg@Root.COM (David Greenman) writes: >>The new cvs apparently has a bugfeature of checking out old things from >>the Attic when there are references to the old things in CVS/Entries >>This is inconsistent with the old cvs, and breaks ctm, which doesn't >>export CVS/*. > Oh! I haven't switched to using the new cvs yet...that explains it. > Peter? >-DG The death support code in the new cvs is getting tripped up because we are writing the repository with the old cvs. The new cvs creates the files in a way that is totally backwards compatable with the old cvs, but it's not perfect the other way around. With cvs-1.5 and later, the state of the file is stored in the state field: 1.1 date 94.06.22.06.57.25; author peter; state Exp; ^^^^^^^^^^ Since files can now be added and removed over and over again without having Attic conflicts, the new cvs has to go purely on the "state" of the revision it is dealing with rather than the global "Attic" state. Specifically... Under old cvs, if somebody does a 'cvs rm' on a file on the HEAD, it is moved to the Attic - this is a global change. If you do an 'cvs update -r yesterday' your tree will no longer build because the file was not recovered. However, with the new cvs writing the repository, this does exactly what you'd expect.. If you did an 'update -r yesterday' (and the file was only just removed), the file will reappear again. When you do the 'update -A' it will disappear again. This is useful for things like in -current at the moment, where i386/conf.c is about to be removed. Once it is gone, under the old cvs, it will no longer be possible to do a 'cvs update -r "december 1st"' and get a buildable system. The "fix" is to install cvs from -current on freefall. This is overdue.. I've just made the changes on freefall to enable it to be compiled there... -Peter
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4bitna$d6q$1>