Downloading SpamAssassin from SVN
The latest development version can be obtained at any given time from the SpamAssassin Subversion (SVN) repository. Please note that this code can be quite unstable and we don't recommend running it on real or important mail unless you really know what you are doing.
Viewing the SVN tree through the web
See SvnBranches for some details on these.
Downloading via anonymous SVN
$ svn checkout http://svn.apache.org/repos/asf/spamassassin/trunk spamassassin-trunk
This will put the latest (trunk) version of spamassassin in the directory spamassassin-trunk.
$ svn checkout http://svn.apache.org/repos/asf/spamassassin/branches/3.4 spamassassin-3.4
This will put the 3.4 branch of spamassassin in the directory spamassassin-3.4.
Downloading via authenticated SVN (committers only)
Use the same commands as above, but replace "http" with "https".
Authentication will allow you to commit your changes to the SpamAssassin tree. Commit access is generally given if you have a history of making valuable contributions to SpamAssassin in the form of patches.
Follow the directions in the INSTALL file as usual (cd spamassassin-trunk; perl Makefile.PL; make; make install).
Updating your tree
$ svn update
This command should update your local tree to reflect changes made on the server. Do this periodically, especially before submitting a patch.
Creating a patch
$ svn diff
This will create a unified diff (patch-file) with the differences between your local tree and the server's copy. Be sure to update before you do this to ensure there are no conflicts.
$ svn list http://svn.apache.org/repos/asf/spamassassin/branches
the old CVS tree and other modules are still hosted at sourceforge.net.
To update a subversion checkout from the incubator tree use the svn switch command inside your working directory:
$ svn switch http://svn.apache.org/repos/asf/spamassassin/trunk
Ubuntu daily builds PPA
To use daily package builds for Ubuntu:
apt-get install python-software-properties # the add-apt-repository command add-apt-repository ppa:spamassassin/spamassassin-daily apt-get update apt-get install spamassassin spamc
Documentation of the process of updating the debian directory which this uses to build can be found at SyncDebianPackaging.