Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 24 Mar 2010 01:49:23 -0700
From:      Jeremy Chadwick <freebsd@jdc.parodius.com>
To:        Krzysztof Dajka <alteriks@gmail.com>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: Can't boot after make installworld
Message-ID:  <20100324084923.GA27740@icarus.home.lan>
In-Reply-To: <684e57ec1003221341s241c6d4fl9f2afa411c55d697@mail.gmail.com>
References:  <cf9b1ee01003220413t14a75e95pc4acf072f876ac64@mail.gmail.com> <684e57ec1003221341s241c6d4fl9f2afa411c55d697@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Mar 22, 2010 at 08:41:35PM +0000, Krzysztof Dajka wrote:
> At first I didn't knew that I am upgrading to bleeding edge/developer
> branch of FreeBSD.

You're not.  There seems to be some misconceptions with regards to what
the tags represent, because people's opinions get in the way (mine
included).

I'll give you the run down as someone who's been using FreeBSD since the
2.2 days.  I'm speaking strictly about src (base system, OS, etc.) and
not ports.  Ports are their own thing, and aren't tagged (the ports
infrastructure should work on any of the below tags, which is why ports
are always tag=.).

I also include correlations to Debian release nomenclature.  Hope this
helps.


-RELEASE  (tag=RELENG_x_y)

An official release of the OS when a new version comes out.  Changes to
this tag are rarely made; the exceptions to the rule are security fixes
and *serious* (major/extreme) stability fixes.  "Serious" means
something that would impact the OS from functioning for all systems and
is considered volatile -- it does not mean "feature X doesn't work
right" or "driver X doesn't function correctly".  Users who encounter a
problem of this nature are told to run -STABLE where the fix is.

The FreeBSD user community often totes this as "the most rock solid
release tag there is", which in my opinion hasn't been the case since
the 4.x days.  We've used the STABLE branches since the 4.x days and
have only run into problems on rare occasion (rolling back to a previous
commit is as easy as using csup's "date" tag in the supfile).

In the Debian world, this tag would correlate with stable/lenny.


-STABLE  (tag=RELENG_x)

Identical to RELEASE except changes to this tag are made fairly
regularly.  OS/kernel, drivers, base system/userland, and security
issues are all addressed here.  Meaning: if you encounter something
broken in non-CURRENT FreeBSD, the fix/change will most likely go into
this branch.  The more you read popular FreeBSD mailing lists
(freebsd-stable, freebsd-users, freebsd-questions, etc.), the more
you'll realise that's the case.

MFCs ("merge from CURRENT") are also occasionally brought down from HEAD
(see below) into this branch for usability testing.  This is where
anti-STABLE advocates get their "STABLE isn't stable at all, use RELEASE
if you want stability" viewpoint.

The FreeBSD user community has split opinions of this branch; some
believe it to be "a development/unstable" branch, while others (like
myself) believe it to be more solid than RELEASE, since developers are
much more focused on STABLE than RELEASE.  Developers who break the
STABLE branch are usually lectured/reprimanded in some way; such
breakage usually appears as buildworld/buildkernel failing.  Turnaround
time for fixing such breakage is usually 24-48 hours tops.

In the Debian world, this tag would correlate with testing/squeeze.


-CURRENT  (tag=., otherwise known as HEAD)

This is where all the crazy, in-development code and features go.  That
includes library API changes, kernel ABI changes, kernel threading
adjustments, experimental drivers ("it works on this one system I have
at home but that's it"), or anything else a developer/committer is
working on which is brand-spanking-new.  It also encapsulates major
underlying configuration changes in the OS, including pathname changes
or syntactical changes.  The OS is also significantly slower
(kernel-wise out-of-the-box due to the default kernel configs enabling
debugging/analysis features which are necessary for development.

This branch is known to break quite often, and that's 100% OK.  Data
loss can happen as well, depending on what breaks or what bugs are
introduced, so if you run this you should absolutely do back-ups.

In the Debian world, this tag would correlate with unstable/sid.


-- 
| Jeremy Chadwick                                   jdc@parodius.com |
| Parodius Networking                       http://www.parodius.com/ |
| UNIX Systems Administrator                  Mountain View, CA, USA |
| Making life hard for others since 1977.              PGP: 4BD6C0CB |




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