Setup
sudo apt-get install subversion
Web-Dav apache module is contained in the libapache2-svn
sudo apt-get install libapache2-svn
To check if Web-Dav is enabled run the 2 following commands
sudo a2enmod dav sudo a2enmod dav_svn
Before creating repositories users and a group must be defined to have access to create or it will not work
so we add the group subversion and the user www-data which is what apache uses
sudo mkdir /var/svn-repos sudo addgroup --gid 3003 subversion sudo useradd -d /home/www-data/ -m -g subversion -u 2003 -c "svn user" -s /bin/bash www-data sudo chown -R www-data:subversion /var/svn-repos/* sudo chmod -R 750 /var/svn-repos/*
Creating Repositories
First go to or create the directory you want to create the repositories in for this example we've created the svn-reps directory in /var/
sudo mkdir /var/svn-reps
The svnadmin allows you to create svn repositories and allows you to perform several maintenance operations on the repositories
Heres an example of how to create 2 different types of repositories
Prior to Subversion 1.2, the default was to use Berkeley DB; the default is now FSFS. You can explicitly choose the filesystem type using the --fs-type argument, which accepts as a parameter either fsfs or bdb.
#How to create an FSFS-backed repository svnadmin create --fs-type fsfs /var/svn-repos/hamsters
In this case we will use the first one so login to www-data then createsu - www-data
svnadmin create --fs-type fsfs /var/svn-repos/hamsters Configuring ApacheTo modify the apache svn module configuration file use your favorite editor on the dav_svn file which is located at /etc/apache2/mods-available/dav_svn.confThe repositories directory needs proper permissions for apache and other users
References
http://svnbook.red-bean.com/en/1.4/svn.intro.whatis.html
http://www.howtoforge.com/debian_subversion_websvn - Debian instructions more straight forward
http://confluence.atlassian.com/display/CROWD/Integrating+Crowd+with+Subversion - Integrating with Crowd