All Posts in svn

December 3, 2008 - 6 comments

Quick guide to Apache, Subversion and SvnX on Mac OS X

theMechanism has been using Subversion for just over a month now. The following is a quick guide to installing and working with Apache, Subversion and SvnX on Mac OS X:

Apache, Subversion and SvnX on Mac OS X

Apache is the local web server (used to view and test files in the working copy), Subversion is the version control software and SvnX is a GUI-client for Subversion.

Before we can use Apache, Subversion and SvnX, we need to check:

  1. Is Apache running?
  2. Is Subversion installed?
  3. Is SvnX installed?


To test Apache, fire up the browser of your choice and enter http://localhost/ into the address bar. If you do not see an "Unable to connect," "Can’t connect to server," or "Error! Connection closed by remote server" screen, Apache is running.

If it is not running, open System Preferences. Under "Internet & Network," choose "Sharing." Make sure "Web Sharing" is checked ("Personal Web Sharing" in Tiger).

Mac OS X Internet & Network Sharing window screen grab

Note that localhost is pointed at /Library/WebServer/Documents/.


To see if Subversion is installed, launch Terminal (Applications | Utilities | Terminal). At the prompt, type:

svn --version

Some information on the version and build should appear. If not, Subversion is not installed.

Mac OS X Terminal screen grab showing results of running svn --version.

If Subversion is not installed, download and install the latest version from


To see if SvnX is installed, check for in the Applications directory.

If it is not there, download and install the latest version from

Working with Subversion via SvnX

Standard Subversion workflow:

  1. Check out a working copy
  2. Make edits to the working copy
  3. Commit the edits to the repository

Checking out a repository

Screen grab of SvnX's Repositories window.

Launch SvnX and set the focus on the "Repositories" window.

Click the "+" button to add a repository.

  • Change the name to something descriptive.
  • Enter the path to the repository.
  • If required, enter your user name and password for the repository.

Once a repository has been added, it will appear in the top half of SvnX's Repositories window. Double-click on the repository to open it:

An open repository in SvnX.

Click the "svn checkout" button at the top of the window and navigate to a directory below /Library/WebServer/Documents. Click the open button and SvnX will download the repository to your local machine.

Close the current window and the SvnX "Repositories" window.

The Working Copy

Set the focus on the SvnX "Working Copies" window. Note that SvnX has added a working copy after check out. Change the name to match the descriptive name in the previous step.

Screen grab of the SvnX Working Copies window.

Double-click on the working copy in the top half of the "Working Copies" window. The main thing to be aware of here is the "Update" button. Click this to refresh your local working copy with any changes made to the repository by any other team member.

In Finder, navigate to the working copy, open index.html in your favorite HTML editor, make some small change and save index.html.

Switch back to the active working copy window and click the "Refresh" button at the top of the window. You’ll see that index.html is added with a "M" (modified).

Screen grab of an open working copy in SvnX.

If you're happy with the change and have previewed it to make sure everything is working, press the "Commit" button on the right side of the screen.

Add a meaningful commit message and press commit.

Version control principles

  1. Update often!
    1. Keep your working copy up-to-date by updating often.
  2. Commit early and often!
    1. Early and often means make atomic changes. Change one thing, test and then commit with comments.
  3. Never commit broken code!
  4. Jeffrey Barke is senior developer and information architect at theMechanism, a multimedia firm with offices in New York, London and Durban, South Africa.

    Published by: jeffreybarke in The Programming Mechanism
    Tags: , ,

December 2, 2008 - Comments Off on NY Web Standards Meetup—Small Web Team Collaboration with Subversion

NY Web Standards Meetup—Small Web Team Collaboration with Subversion

The New York Web Standards Meetup Group will meet this Thursday (4 December 2008) at theMechanism at 7:00 pm.

Scott Trudeau (Apartment Therapy Media) will demo using Subversion, MAMP/XAMPP, TortoiseSVN and SvnX and show some tricks for managing dev/staging/production versions.

4 December 2008 . 7:00 pm
440 9th Avenue 8th Floor
New York, NY 10001 [map]

RSVP now!

Please contact us if you'd like to present at the March or April 2009 meetup.

Published by: jeffreybarke in The Programming Mechanism
Tags: , ,