mirror of
https://git.hardenedbsd.org/hardenedbsd/HardenedBSD.git
synced 2024-12-30 23:48:09 +01:00
1130b656e5
This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
110 lines
5.4 KiB
Plaintext
110 lines
5.4 KiB
Plaintext
<!-- $FreeBSD$ -->
|
|
<!-- The FreeBSD Documentation Project -->
|
|
|
|
<sect><heading>The FreeBSD development model<label id="development"></heading>
|
|
|
|
<p><em>Contributed by &a.asami;</em>.
|
|
|
|
<p>The development of FreeBSD is a very open and flexible process,
|
|
FreeBSD being literally built from the contributions of hundreds of
|
|
people around the world, as can be seen from our <ref id="contrib"
|
|
name="list of contributors">. We are constantly on the lookout for
|
|
new developers and ideas, and those interested in becoming more
|
|
closely involved with the project need simply contact us at the
|
|
&a.hackers;. Those who prefer to work more independently are also
|
|
accommodated, and they are free to use our FTP facilities at <htmlurl
|
|
url="ftp://ftp.freebsd.org/pub/FreeBSD/incoming"
|
|
name="ftp.freebsd.org"> to distribute their own patches or work-in-progress
|
|
sources. The &a.announce; is also available to those wishing
|
|
to make other FreeBSD users aware of major areas of work.
|
|
|
|
Useful things to know about the FreeBSD project and its development process,
|
|
whether working independently or in close cooperation:
|
|
|
|
<descrip>
|
|
<itemize>
|
|
<item><bf>The CVS repository</bf><label id="development:cvs-repository">
|
|
|
|
<p>The central source tree for FreeBSD is maintained by <htmlurl
|
|
url="http://www.cyclic.com/cyclic-pages/CVS-sheet.html" name="CVS">
|
|
(Concurrent Version System), a freely available source code control
|
|
tool which comes bundled with FreeBSD. The primary <htmlurl
|
|
url="http://www.freebsd.org/cgi/cvsweb.cgi" name="CVS repository">
|
|
resides on a machine in Concord CA, USA from where it is replicated
|
|
to numerous mirror machines throughout the world. The CVS tree, as well
|
|
as the <ref id="current" name="-current"> and <ref id="stable"
|
|
name="-stable"> trees which are checked out of it, can be easily
|
|
replicated to your own machine as well. Please refer to the
|
|
<ref id="synching" name="Synchronizing your source tree">
|
|
section for more information on doing this.</item>
|
|
|
|
<item><bf>The committers list</bf><label id="development:committers">
|
|
<p>The <ref id="contrib:committers" name="committers"> are the people
|
|
who have <em>write</em> access to the CVS tree, and are thus
|
|
authorized to make modifications to the FreeBSD source (the term
|
|
``committer'' comes from the <tt>cvs(1)</tt> ``<tt>commit</tt>''
|
|
command, which is used to bring new changes into the CVS repository).
|
|
The best way of making submissions for review by the committers list
|
|
is to use the <htmlurl url="http://www.freebsd.org/send-pr.html"
|
|
name="send-pr(1)"> command, though if something appears to be jammed
|
|
in the system then you may also reach them by sending mail to <htmlurl
|
|
url="mailto:committers@freebsd.org" name="committers@freebsd.org">.
|
|
</item>
|
|
|
|
<item><bf>The FreeBSD core team</bf><label id="development:core">
|
|
|
|
<p>The <ref id="contrib:core" name="FreeBSD core team"> would be
|
|
equivalent to the board of directors if the FreeBSD Project were a
|
|
company. The primary task of the core team is to make sure the
|
|
project, as a whole, is in good shape and is heading in the right
|
|
directions. Inviting dedicated and responsible developers to join our
|
|
group of committers is one of the functions of the core team, as is
|
|
the recruitment of new core team members as others move on. Most
|
|
current members of the core team started as committers who's addiction
|
|
to the project got the better of them.
|
|
|
|
<p>Some core team members also have specific <ref id="contrib:who"
|
|
name="areas of responsibility">, meaning that they are committed to
|
|
ensuring that some large portion of the system works as advertised.
|
|
Note that most members of the core team are volunteers when it comes
|
|
to FreeBSD development and do not benefit from the project
|
|
financially, so "commitment" should also not be misconstrued as
|
|
meaning "guaranteed support." The ``board of directors'' analogy
|
|
above is not actually very accurate, and it may be more suitable to
|
|
say that these are the people who gave up their lives in favor of
|
|
FreeBSD against their better judgement! <tt>;)</tt></item>
|
|
|
|
|
|
<item><bf>Outside contributors</bf>
|
|
|
|
<p>Last, but definitely not least, the largest group of developers are
|
|
the users themselves who provide feedback and bug-fixes to us on an
|
|
almost constant basis. The primary way of keeping in touch with FreeBSD's
|
|
more non-centralized development is to subscribe to the &a.hackers;
|
|
(see <ref id="eresources:mail" name="mailing list info">) where such
|
|
things are discussed.
|
|
|
|
<ref id="contrib:additional" name="The list"> of those who have
|
|
contributed something which made its way into our source tree is
|
|
a long and growing one, so why not join it by contributing something
|
|
back to FreeBSD today? <tt>:-)</tt>
|
|
|
|
<p>Providing code is not the only way of contributing to the project;
|
|
for a more complete list of things that need doing, please refer to the <ref
|
|
id="submitters" name="how to contribute"> section in this handbook.
|
|
|
|
</itemize>
|
|
</descrip>
|
|
|
|
In summary, our development model is organized as a loose set of
|
|
concentric circles. The centralized model is designed for the
|
|
convenience of the <em>users</em> of FreeBSD, who are thereby provided
|
|
with an easy way of tracking one central code base, not to keep
|
|
potential contributors out! Our desire is to present a stable
|
|
operating system with a large set of coherent <ref id="ports"
|
|
name="application programs"> that the users can easily install and
|
|
use, and this model works very well in accomplishing that.
|
|
|
|
All we ask of those who would join us as FreeBSD developers is some of
|
|
the same dedication its current people have to its continued success!
|