A project model for the FreeBSD Project

Niklas Saers

Revision: 50965
Revision History
Revision 1.5October, 2014
Remove mention of GNATS which is no longer used by the project.
Revision 1.4September, 2013
Remove mention of CVS and CVSup which are no longer used by the project.
Revision 1.3October, 2012
Remove hats held by specific people, these are documented elsewhere.
Revision 1.2April, 2005
Update one year of changes, replace statistics with those of 2004
Revision 1.1July, 2004
First update within the FreeBSD tree
Revision 1.0December 4th, 2003
Ready for commit to FreeBSD Documentation
Revision 0.7April 7th, 2003
Release for review by the Documentation team
Revision 0.6March 1st, 2003
Incorporated corrections noted by interviewees and reviewers
Revision 0.5February 1st, 2003
Initial review by interviewees
[ Split HTML / Single HTML ]

Table of Contents
1. Overview
2. Definitions
2.1. Activity
2.2. Process
2.3. Hat
2.4. Outcome
2.5. FreeBSD
3. Organisational structure
4. Methodology model
4.1. Development model
4.2. Release branches
4.3. Model summary
5. Hats
5.1. General Hats
5.2. Official Hats
5.3. Process dependent hats
6. Processes
6.1. Adding new and removing old committers
6.2. Committing code
6.3. Core election
6.4. Development of new features
6.5. Maintenance
6.6. Problem reporting
6.7. Reacting to misbehavior
6.8. Release engineering
7. Tools
7.1. Subversion (SVN)
7.2. Bugzilla
7.3. Mailman
7.4. Perforce
7.5. Pretty Good Privacy
7.6. Secure Shell
8. Sub-projects
8.1. The Ports Subproject
8.2. The FreeBSD Documentation Project
List of Figures
3.1. The FreeBSD Project's structure
3.2. The FreeBSD Project's structure with committers in categories
4.1. Jørgenssen's model for change integration
4.2. The FreeBSD release tree
4.3. The overall development model
5.1. Overview of official hats
6.1. Process summary: adding a new committer
6.2. Process summary: removing a committer
6.3. Process summary: A committer commits code
6.4. Process summary: A contributor commits code
6.5. Process summary: Core elections
6.6. Jørgenssen's model for change integration
6.7. Process summary: problem reporting
6.8. Process summary: release engineering
8.1. Number of ports added between 1996 and 2005

All FreeBSD documents are available for download at https://download.freebsd.org/ftp/doc/

Questions that are not answered by the documentation may be sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.