Tonight I completed my first installation/set-up of Subversion source control on Fedora Core 6. I’ve been a long time CVS user, and although I have used Subversion (SVN) I have never actually set-up a repository. Tonight, using the resources of the net, I was able to get one going.
The first document that I found that was a great start was this piece titled: Setting Up A Subversion Repository Using Apache. I had already installed SVN on my server using Yum, and so the second page of this really covered all of the steps to get things going. I actually created a Virtual Server in Apache to be my SVN server … and so I added the various httpd.conf settings within that virtual server. I created my own file within the Apache /etc/httpd/conf.d directory, following the instructions in the article above.
Of course when I then restarted Apache it immediately died with the error “unknown DAV provider: svn”. When I searched Google for the answer, I found this post which explained that I needed the “mod_dav_svn” to be loaded. I did a quick search of my hard drive and found that it wasn’t even installed on my server. Back to yum … a quick “yum install mod_dav_svn” got that in place … and also added a “subversion.conf” into /etc/httpd/conf.d … and so I moved my conf file contents into the subversion.conf file to keep things neat.When I restarted Apache, it was happy as could be … and I was off and running. I did a quick connect test from Eclipse, and it worked. Now I have been told that DAV access to SVN is slower than using the svnserve proprietary protocol, and so I did some quick looking around on how to get that up and running.
This article on Running a Subversion Server was a good reference that linked me to an awesome book called Version Control with Subversion, which was freely available, and downloadable as a PDF. This book had some great information on getting the various files set-up and configured for access. Once I had svnserve all configured, I did a quick test run and it worked perfectly.
The last part of the installation was to have svnserve automatically start when I booted my server. I found a contribution on the SVNForum.org website where a user posted a SVN init.d script for Fedora that works great. Make sure to read the comments below his post to fix a few things that he got wrong … but with those tweaks it works great.
I’m looking forward to getting all of my projects moved over to SVN now, to take advantage of the various benefits of SVN on my own servers. As usual … it went pretty smoothly …