Now onto setting up SVN and apache.
First off, make sure libapache2-svn is installed. Now to the configuration in
Mine looks like this:
<Location /svn/project> DAV svn SVNPath /path/to/my/project/svn AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/apache2/dav_svn.passwd <LimitExcept GET PROPFIND OPTIONS REPORT> Require valid-user </LimitExcept> </Location>
Note: I'm doing something stupid here. I'm create ONE repository for my project as opposed to using
SVNParentPath where you could have multiple repositories later. Yes, this is just for one project. We'll go back and fix later. (It's a virtual machine remember!)
Next, create a password:
htpasswd2 -c /etc/apache2/dav_svn.passwd josh
Now, onto our SVN repository. Let's give apache access (while we're at it, let's fix the group from last time too)
sudo chown www-data:www-data -R /projects
Ok, now to throw some random thing in the repostiory and make sure you can see it:
sudo su www-data cd /some/place/safe mkdir tmp touch tmp/README svn import /some/place/safe/tmp file:///path/to/my/project/svn
Alright... now we restart apache (
/etc/init.d/apache2 restart) and it should be up and running! if you're like me shoot over to
http://localhost:8888/svn/project and you should see your SVN repostiory. (you should also make sure TRAC sees it).
Well, I think we accomplished something here! Now (if your box is on the net) you can start adding code and tracking changes. Unfortunately we have a little bit more to do before I'm ready to start my project, and that little bit is the maven infrastructure.
I was hoping Trac could manage our passwords for SVN (and create new repositories), but it looks like that's a no. Oh well, once again we'll see how annoying it gets. If it gets too annoying, I'll make an extension. I'm hoping to find an alternative to gforge that I can host internally to a company.