So there I am, committing a whole heap of changes to the pgAdmin build system when Andreas Pflug emails me and suggest that whilst I'm at it, we could restructure the source tree to fix various issues that have cropped up since the project started. Good idea I think, however as anyone who has used it knows, you cannot move files and directories in CVS without losing the continuity of the history.
Subversion kept getting lots of good recommendations, and as it happens I was also replacing the main developement server, so after discussion and some playing with a test installation of Subversion for a while, we decide to migrate to it at the same time as we migrate to the new machine.
I won't write a full howto here, but I will include a warning about a gotcha that caught me out - to get the ViewCVS web interface runnng you need to install SWIG first, and then build and install the Subversion Python bindings - instructions for which are hidden away in subversion/bindings/swig/INSTALL in the Subversion source tarball. You will also need to use ViewCVS 1.0-dev, straight from the CVS.
So, yesterday it all went live, and so far, so good. I've made a heap of commits updating documentation and build scripts etc. and Andreas got in on the act with some source restructuring this afternoon. The only problems so far have been in ViewCVS. The first was my fault - diff's weren't working, and after 30 minutes or so of Googling and trying to understand the Python code (I don't speak Python yet), I realised it was because I hadn't installed GNU diffutils on the new dev box. D'oh! The second problem still needs investigation - the CVS Graph buttons are not showing up. It seems this is a known problem though.
Anyway, if you wanna take a look, head over to http://svn.pgadmin.org, or point your Subversion client at svn://svn.pgadmin.org/
By strange coincidence I see that the old "let's move to a new source control program" discussion is resurfacing on pgsql-hackers.... I wonder where it'll go this time?