Subversion

Subversion is used as a code repository and is required to retrieve the code from the repository and commit changes back. Most (all?) IDEs integrate some tool that can do this, but they are sometimes a bit hard to use. I prefer to use the command line. This way I know exactly what happens. There is an excellent online book explaining SVN.

Usage

Only commit changes that do not break the build. Personally I prefer to have lot’s of small commits. This way I do have a fallback should I mess up my local code in such a way that I cannot trackback to a stage that represents a usable code basis.

Maven

Maven is the tool used to define the dependencies the projects has on other libraries or projects as well as building the whole thing. The Project uses version 3.x which can be downloaded and installed/unzipped from the homepage. There are two good books about Maven: A beginners guide and a more complete reference.