Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Sep 2003 20:54:26 -0400
From:      "C. Ulrich" <dincht@securenym.net>
To:        Scott Schappell <archon@silvertree.org>
Cc:        questions@freebsd.org
Subject:   Re: Seeking advice for new server: 4.8-REL vs. 4.9-BETA
Message-ID:  <200309260056.h8Q0ugP26234@anon.securenym.net>
In-Reply-To: <3F732FB9.9000900@silvertree.org>
References:  <20030925171846.GA54272@polands.org> <20030925175342.GA54334@polands.org> <3F732FB9.9000900@silvertree.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 2003-09-25 at 14:11, Scott Schappell wrote:
> The way I understand it is there are three "branches"
> 
> CURRENT - the cutting edge source, use at your own risk, etc (5.x). This 
> is a branch that is in development.
> STABLE - this is the development branch for a current dot release. For 
> example 4.9 right now is in the STABLE  branch and has gone through a 
> certain level of testing in CURRENT.  4.9 right now is PRERELEASE, but 
> it's still considered STABLE. Since it's still a dvelopment branch, it's 
> prone to bugs (but not as many as CURRENT) as used primarily for 
> contributors to the project or folks who want to stay as absolutely 
> current in their current RELENG version (4).
> RELEASE - this is a branch that is the most stable, it's only updated to 
> fix security or system issues.

>From what I can tell, this is mostly correct. Release engineering seems
to be a little tricky. If I read the docs right, it's better to keep in
mind that there are only two main development branches, -CURRENT and
-STABLE. -RELEASE is just a snapshot of either branch at appropriate
intervals (the docs say approximately every 4 months). The purpose of a
-RELEASE is to stabilize the code bases enough so that a release of the
branch can be made for bumping up the version number and sending it out
on a CD. As of this writing, the two latest -RELEASEs are 4.8-RELEASE
and 5.1-RELEASE for -STABLE and -CURRENT respectively.

HEAD is the active CVS development branch where all the brand-new code
goes and winds up as the next -CURRENT release. In this case,
5.2-RELEASE. You don't ever want to track HEAD unless you're developing,
insanely curious, or just insane.

This is how it's all laid out in my mind, yours may differ. :P (If it
does, let me know!) FreeBSD release engineering is quite complex but
when I try to wrap my head around it, it seems to make some sense from a
development point of view.

> If you're tagging *default tag release=. (that's a literal . not a 
> punctuation mark) then you're tracking CURRENT (5.x)
> If you're tagging *default tag release=RELENG_4 you're tracking 4.x STABLE
> If you're tagging *default tag release=RELENG_4_8 you're tracking 4.8 
> RELEASE (security branch) - this is what I'm following in my cvsupfile.
> 
> Again, this is how I see it after reading the handbook, and I may be a 
> bit off the mark :).

I got my information (or inferred it) from the Release Engineering page:

http://www.freebsd.org/releng/index.html

I think the docs there might explain the release process a little better
than the handbook (but will obviously be more technical.)

C. Ulrich
-- 
http://bityard.net



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200309260056.h8Q0ugP26234>