Subversion

Last updated 2008/03/18

Return to the Suffield Academy Network Documentation Homepage

A printable version of this document is also available.

Introduction

Subversion is a source-control and revisioning repository. In short, it's a system that allows multiple people to edit files and keep up-to-date with each other's changes. Additionally, it stores all versions of a file as its being edited, so it's simple to restore previous versions of a file in the event of a problem.

At Suffield, we use Subversion to store configuration data, web sites, and documentation (including the document you're reading right now).

Mac OS X Client Setup

As Mac OS X is a UNIX-like operating system, the command-line parts of Subversion compile cleanly and are easily ported to the system. Several pre-compiled versions of Subversion are available for download on the web in a packaged form. Additionally, you may build Subversion yourself from source, either by hand or by using a port utility.

Precompiled Versions

Martin Ott (one of the developers of SubEthaEdit) has statically-compiled binaries of Subversion for Mac OS X:

http://homepage.mac.com/martinott/

Download, install, and you're ready to go! This solution is good for machine that only need Subversion, and not a whole package-management system.

Fink

Subversion is included in the Fink project. If you already have Fink installed on your machine, you can easily install it using the package management tools.

DarwinPorts

For machines that will have several open-source packages installed on them (in addition to Subversion), it's best to use a port-management system. Fink works well, but we are now tending towards the DarwinPorts system. This system is similar to Fink, except that you compile the software yourself. We choose it because the software tends to be a little more up-to-date than the precompiled versions in the Fink repositories.

To install the Subversion client, you must first install DarwinPorts. Visit the main site (http://www.darwinports.org/) and install the Mac OS X installer. (For more information on what DarwinPorts is and how it works, please refer to the documentation on the website.)

Note that DarwinPorts requires a working compiler and other build tools. You can get these by installing the XCode tools on your machine (the XCode tools can be found on your installation DVD).

If you've just installed DarwinPorts for the first time, you'll need to add a line to your .bash_profile that looks like this:

# Add DarwinPorts path
export PATH=${PATH}:/opt/local/bin

Once you've installed the software, you're ready to update the list of available ports. Type the following in the Terminal:

sudo port selfupdate

You are now ready to build Subversion. Run the following command:

sudo port install subversion

DarwinPorts will download, unpack, configure, compile, and clean the distribution for you automatically. When done, you should be able to run the following:

svn help

You should get a list of Subversion commands on your screen. If you do, then subversion is installed, and you're ready to go!