As a new developer there are a number of things you should do first. The first set is specific to committers only. (If you are not a committer, e.g., have GNATS-only access, then your mentor needs to do these things for you.)
The .ent, .xml,
and .xml files listed below exist in the
FreeBSD Documentation Project SVN repository at
svn.FreeBSD.org/doc/.
If you have been given commit rights to one or more of the repositories:
Add your author entity to
head/share/xml/authors.ent;
this should be done first since an omission of this commit will
cause the next commits to break the doc/ build.
This is a relatively easy task, but remains a good first test of your version control skills.
New files that do not have the
FreeBSD=%H svn:keywords
property will be rejected when attempting to commit them to the
repository. Be sure to read Section 3.3.7, “Adding and Removing Files”
regarding adding and removing files, in addition
to verifying that ~/.subversion/config
contains the necessary "auto-props"
entries from auto-props.txt mentioned
there.
Don't forget to get mentor approval for these patches!
Also add your author entity to
head/share/xml/developers.ent.
Add yourself to the “Developers” section of
the Contributors List
(head/en_US.ISO8859-1/articles/contributors/contrib.committers.xml) and remove yourself from the “Additional
Contributors” section (head/en_US.ISO8859-1/articles/contributors/contrib.additional.xml).
Please note that entries are sorted by last name.
Add an entry for yourself to
head/share/xml/news.xml. Look for the other
entries that look like “A new committer” and follow the
format.
You should add your PGP or GnuPG key to
head/share/pgpkeys (and if you do not
have a key, you should create one). Do not forget to commit
the updated head/share/pgpkeys/pgpkeys.ent
and head/share/pgpkeys/pgpkeys-developers.xml.
Please note that entries are sorted by last name.
Dag-Erling Smørgrav <des@FreeBSD.org> has
written a shell script (head/share/pgpkeys/addkey.sh) to make this extremely simple. See the
README
file for more information.
It is important to have an up-to-date PGP/GnuPG key in
the Handbook, since the key may be required for positive
identification of a committer, e.g., by the FreeBSD Administrators <admins@FreeBSD.org> for
account recovery. A complete keyring of FreeBSD.org users is available
for download from http://www.FreeBSD.org/doc/pgpkeyring.txt.
Add an entry for yourself to
src/share/misc/committers-,
where repository is either doc, ports or src, depending on the commit privileges
you obtained.repository.dot
Some people add an entry for themselves to
ports/astro/xearth/files/freebsd.committers.markers.
Some people add an entry for themselves to
src/usr.bin/calendar/calendars/calendar.freebsd.
If you already have an account at the FreeBSD wiki, make sure your mentor moves you from the Contributors group to the Developers group. Otherwise, consider signing up for an account so you can publish projects and ideas you are working on.
Once you get access to the wiki, you may add yourself to the How We Got Here and Irc Nicks pages.
If you subscribe to svn-src-all, svn-ports-all or svn-doc-all, you will probably want to unsubscribe to avoid receiving duplicate copies of commit messages and their followups.
All src commits should go to
FreeBSD-CURRENT first before being merged to FreeBSD-STABLE. No major
new features or high-risk modifications should be made to the
FreeBSD-STABLE branch.
Whether or not you have commit rights:
Introduce yourself to the other developers, otherwise no one will have any idea who you are or what you are working on. You do not have to write a comprehensive biography, just write a paragraph or two about who you are and what you plan to be working on as a developer in FreeBSD. (You should also mention who your mentor will be). Email this to the FreeBSD developers mailing list and you will be on your way!
Log into hub.FreeBSD.org and create a
/var/forward/
(where useruser is your username) file
containing the e-mail address where you want mail addressed to
yourusername@FreeBSD.org to be forwarded.
This includes all of the commit messages as well as any other mail
addressed to the FreeBSD committer's mailing list and the FreeBSD developers mailing list. Really
large mailboxes which have taken up permanent residence on
hub often get “accidentally” truncated
without warning, so forward it or read it and you will not lose
it.
Due to the severe load dealing with SPAM places on
the central mail servers that do the mailing list processing
the front-end server does do some basic checks and will
drop some messages based on these checks. At the moment
proper DNS information for the connecting host is the only
check in place but that may change. Some people blame these
checks for bouncing valid email. If you want these checks
turned off for your email you can place a file named
.spam_lover in your home directory
on freefall.FreeBSD.org to
disable the checks for your email.
If you are a developer but not a committer, you will not be subscribed to the committers or developers mailing lists; the subscriptions are derived from the access rights.
All new developers also have a mentor assigned to them for the first few months. Your mentor is responsible for teaching you the rules and conventions of the project and guiding your first steps in the developer community. Your mentor is also personally responsible for your actions during this initial period.
For committers: until your
mentor decides (and announces with a forced
commit to access) that you have learned the
ropes and are ready to commit on your own, you should not commit
anything without first getting your mentor's review and
approval, and you should document that approval with an
Approved by: line in the commit
message.
This, and other documents, can be downloaded from ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/
For questions about FreeBSD, read the
documentation before
contacting <questions@FreeBSD.org>.
For questions about this documentation, e-mail <doc@FreeBSD.org>.