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:
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.