Date: Mon, 29 Nov 1999 13:52:52 +0800 From: Peter Wemm <peter@netplex.com.au> To: Bill Fumerola <billf@chc-chimes.com> Cc: Warner Losh <imp@village.org>, Bruce Evans <bde@zeta.org.au>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/kern kern_exit.c kern_synch.c src/sys/sys proc.h Message-ID: <19991129055252.65D5E1C6D@overcee.netplex.com.au> In-Reply-To: Message from Bill Fumerola <billf@chc-chimes.com> of "Sun, 28 Nov 1999 15:50:09 EST." <Pine.BSF.4.10.9911281548150.51090-100000@jade.chc-chimes.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Bill Fumerola wrote: > On Sun, 28 Nov 1999, Warner Losh wrote: > > > Hmmm. I do find it odd that all three files showed exactly the same > > number of lines + and -... Even the .h file. > > While we're making complaints about the accuracy of the diff counter.. > > It gets rather confused when multiple branches are thrown into > the mix. If I make a change which is rev1.3 of a file but was > based off of 1.1.1.6 or something, the counter will give me the > difference of 1.3 and 1.2, IIRC. > > Not a big deal, but if someone is hacking around there, they might > want to check that out too. The line counter shows the impact on the CVS repo, which occasionally isn't the same as the actual number of lines added or removed. The RCS file format is quite braindead and certain operations to achieve things for CVS are hideously expensive for the repository.. Files leaving the vendor branch is such a thing. Scenario, given a file and a timeline: 1.1.1.1 vendor import 1.1.1.2 vendor import +1000, -500 lines 1.1.1.3 vendor import +2000, -500 lines 1.1.1.4 vendor import +1000, -1000 lines at this point, somebody changes 1 line and the file leaves the vendor branch.. 1.2 trivial 1-line change: result +4001, -2001 lines This is because the 1.2 delta is stored relative to 1.1.1.1, *not* 1.1.1.4, and so the entire vendor history is duplicated in the 1.2 delta. Now, repeat this for 2000 files in a large directory.... it adds up a lot. *This* is why we have such "hands off" policies for src/contrib and other things that track the vendor releases. This is why "typo fixes" in man pages and spelling "corrections" are so strongly discouraged for vendor code. Cheers, -Peter To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19991129055252.65D5E1C6D>