A while back I wrote about moving to Subversion for revision control. To this point it has worked well for the little I have needed it. But as I begin ramping up my development efforts I find that I spend more time on my PowerBook than I previously have. This has introduced a new wrinkle into my development process.
I initially only setup the Subversion client tools which support local code repositories, but do not provide any mechanism for remote or networked repositories. So, I set off to remedy this problem.
After some effort tracking down the right order to do things, here are the steps that I took:
- Remove any existing installations of subversion client and server (svnserve)
- Download and install the subversion Mac OS X binaries from Martin Ott [SubEthaEdit]
- Add the subverion binaries to your unix command line path. I did this by adding the following to my .profile file in my home directory.
- Open the ports TCP:3690 UDP:3690 through the firewall properties. You’ll probably need to add a new service.
- Run the svnserve daemon
svnserve -d --root=/Volumes/CodeVault/Subversion/
- Create a new Repository
svnadmin create --fs-type fsfs //Volumes/CodeVault/Subversion/[repository name]
- Configure repository for remote access by following the steps outlined in the Built-in authentication and authorization section of the Subversion Docs.
- Import project into new repository
svn import ./[project name] svn://localhost/[repostiory name] --message 'Initial repository layout'
- Verify repository locally
svn list svn://localhost/[repository name]
- Verify access from remote machine
svn list svn://[machine name]/[repository name]