Blog entry

SVN and firewall woes

Every now and then I get the urge to build another website. This time I decided to take the professional route and put everything in SVN. Very nice but that means I need to get my SVN server up and running. Nice to see that I no longer need to rely on Fink or MacPorts, but that Snow Leopard comes with a very recent version.

Setting up a project repository is usually a one off action and since it's on my local network I don't really bother with Apache front ends and authentication, so svnserve suffices. But it always takes a lot of time to wade through the documentation to figure out what to do, so I'm writing it up here for next time.

Create a new repository:

cd /location/of/svn_repositories
svnadmin create PROJECTNAME

Create the trunk directory:

svn mkdir -m "Initial project root" file:///absolute/path/to/location/of/svn_repositories/PROJECTNAME/trunk

Check out the trunk in the local copy directory:

svn checkout svn://svnhost/PROJECTNAME/trunk .

However, the last command timed out. It took a while to figure out why: Snow Leopard's firewall. It's nice that you can add applications that are allowed access, but what if you can't select /usr/bin/svnserve from the file dialog box? After much fiddling I figured out that I could drag the application from the Finder to the application list in the firewall settings. But that didn't work.

Finally I decided to download Waterroof, a nice front end to the old network based firewall. Adding a rule was simple, but it still didn't work.

Console gave a clue: Waterroof allowed the incoming connection and the standard firewall denied it. So much for Apple's firewall. I turned it off and things are back to what I expect them to be.

O, big reminder to myself: don't forget the . after the svn checkout <url> or you'll end up with a directory 'trunk' in your local copy which is not what I want.

Add new comment

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image.