Date: Thu, 2 May 2002 15:58:03 -0700 From: "Drew Tomlinson" <drew@mykitchentable.net> To: "Terry Lambert" <tlambert2@mindspring.com> Cc: <bmah@FreeBSD.ORG>, "Dave Hayes" <dave@jetcafe.org>, <freebsd-hackers@FreeBSD.ORG>, <freebsd-stable@FreeBSD.ORG> Subject: Re: Difference between RELENG_* and RELENG_*_BP Message-ID: <020d01c1f22c$d0c6b210$6e2a6ba5@lc.ca.gov> 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> <3CD1BFA5.FD745354@mindspring.com>
next in thread | previous in thread | raw e-mail | index | archive | help
----- Original Message ----- From: "Terry Lambert" <tlambert2@mindspring.com> Sent: Thursday, May 02, 2002 3:37 PM > 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? Yes it does. Thank you for your through and detailed explaination. Drew To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?020d01c1f22c$d0c6b210$6e2a6ba5>