2010/12/15 - Apache Excalibur has been retired.

For more information, please explore the Attic.

What is Subversion?

Subversion (svn for short) is a version control system that beats the shit out of CVS. See the subversion homepage for more information. Excalibur uses subversion for version control.

How do I use it?

After downloading the client, point it towards the excalibur repository at

        https://svn.apache.org/repos/asf/excalibur/
            

(note you can also browse the repository online from that url). To check out the latest and greatest bleeding edge excalibur source tree, use a command like this:

        svn checkout https://svn.apache.org/repos/asf/excalibur/trunk/ excalibur-trunk
            

Web access

You can browse the repository online through

http://cvs.apache.org/viewcvs.cgi/excalibur/?root=Apache-SVN

A rather more restricted web interface is offered by viewing the repository directly:

https://svn.apache.org/repos/asf/excalibur/

What about write access?

If you're an excalibur, cocoon or james committer, you have write access to that repository using that same URL. Before you can do anything, you need to set up a svn password. To do so, log in to svn.apache.org using SSH, and enter the command svnpasswd. Pick a safe password!

Now, when you make changes, you can commit them with your username/password combination. Ie:

        cd excalibur-trunk
        echo "test" > test.txt
        svn add test.txt
        svn commit --username your-name --password your-password --message "Trying out svn"
            

How does all that work?

The setup the ASF uses is pretty much the one described in chapter 6 of the svn book. The repository lives in /x1/svn on minotaur.apache.org, with the important files related to authorization living in that directory, too.

What about IDE integration and GUI clients?

It works fine. Go and google.

  • TortoiseSVN provides windows explorer integration;
  • svnup provides IDEA integration and a java GUI;
  • subclipse provides Eclipse integration; etc etc.