From owner-freebsd-stable Thu May 2 15:38:19 2002 Delivered-To: freebsd-stable@freebsd.org Received: from pintail.mail.pas.earthlink.net (pintail.mail.pas.earthlink.net [207.217.120.122]) by hub.freebsd.org (Postfix) with ESMTP id 2B66737B446; Thu, 2 May 2002 15:38:00 -0700 (PDT) Received: from pool0524.cvx21-bradley.dialup.earthlink.net ([209.179.194.14] helo=mindspring.com) by pintail.mail.pas.earthlink.net with esmtp (Exim 3.33 #2) id 173PD1-0006mv-00; Thu, 02 May 2002 15:37:55 -0700 Message-ID: <3CD1BFA5.FD745354@mindspring.com> Date: Thu, 02 May 2002 15:37:25 -0700 From: Terry Lambert X-Mailer: Mozilla 4.7 [en]C-CCK-MCD {Sony} (Win98; U) X-Accept-Language: en MIME-Version: 1.0 To: Drew Tomlinson Cc: bmah@FreeBSD.ORG, Dave Hayes , freebsd-hackers@FreeBSD.ORG, freebsd-stable@FreeBSD.ORG Subject: Re: Difference between RELENG_* and RELENG_*_BP References: <200205022047.g42Klxb84582@hokkshideh2.jetcafe.org> <3CD1ACD6.5B2432DF@mindspring.com> <200205022128.g42LSXjr072995@intruder.bmah.org> <3CD1B790.DB547674@mindspring.com> <01c501c1f226$ecd7cfd0$6e2a6ba5@lc.ca.gov> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Drew Tomlinson wrote: > I'm just trying to understand. :) How is RELENG_X_Y_BP different from > RELENG_X_Y_RELEASE? For the most part, studying the FreeBSD source tree is a good lesson in how to be clever in your use of CVS. The only place it really falls down is in the lack of vendor tagging for things lice sendmail, etc., which really want to be brought in on a vendor branch, and then branch tagged then rtagged, so that local modifications can be done without screwing with the ability to bring a new release of the code in on the vendor branch, and then re-tag and re-merge it. Archie Cobbs and Julian and Bryan Mann worked out a pretty good system, which we used at Whistle, and then for those things that didn't fit, I "rewrote history" by re-checking them in and retagging them. Archie wrote a little FAQ on that; I don't know if he'd be willing to share it. But to use the same approach for, for example, sendmail in FreeBSD, would require some Makefile changes, some .mk file changes, and a seperate parallel "module" branch (the main branch would check out from the module branch *with a particular tag* as part of the build process, and then descend into the checked out code). It's not impossible to build without a CVS tree if you do that, but it makes it harder, so it's probably not an acceptable approach for FreeBSD to use directly. But to answer directly the question: RELENG_X_Y_RELEASE marks "end of work" RELENG_X_Y_BP marks "start of work". If you look at the diagram on the referenced web page, you end up with two different branch heads. -- Like I said, you need a third dimension, or an angled line (pseudo Z axis) to represent it in a two dimensional diagram. I'll use indentation (below) to represent an X/Z diagram off the RELENG_4 point in the X/Y diagram. If it weren't for the need to rtag it to get the -SECURITY branch head, the _BP version would probably not have been done with an rtag, and would use a simple tag, instead. Look at the example in the middle. It's confusing, because you would expect the tag ordering to be: RELENG_4 RELENG_4_4 <---.--- could use "tag" RELENG_4_4_BP <---' RELENG_4_4_RELEASE because you would expect that, as time goes on, you would tack more and more suffixes onto the thing. But the actual ordering is: RELENG_4 RELENG_4_4_BP <---.--- needs "rtag" RELENG_4_4 <---' RELENG_4_4_RELEASE <--- From -STABLE, not -SECURITY Make sense now? -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message