- install apache2: sudo apt-get install apache2
- install svn: sudo apt-get install subversion
- add a svnusers group: sudo groupadd svnusers
- enabled visibility for all users: Alt-F2 to bring up run, and then type in gconf-editor. Within this, open apps/gnome-system-tools/users, and check showall.
- add me, root and www-data to svnusers group: I cheated and did it via the GUI!
- create root repositories directory: sudo mkdir /srv/repositories
- assign repositories to www-data & svnusers: sudo chown -R www-data:svnusers /srv/repositories
- change mod: sudo chmod -R g+rws /srv/repositories
- create rails repo, in /srv/repositores: svnadmin create rails
- repeat steps 7 & 8, to ensure that apache owns and controls all the files in the repo
- install libapache2-svn: sudo apt-get install libapache2-svn
- restart Apache2: sudo /etc/init.d/apache2 restart
- edit /etc/apache2/mods-available/dav_svn.conf. Add in the contents specified here. The list is below.
- create the password file /etc/subversion/passwd: sudo htpasswd -c /etc/subversion/passwd matthew. Don't forget this, or you'll end up with weird permissions errors in local and remote clients, including things along the lines of "Server sent unexpected return value (500 Internal Server Error) in response to MKACTIVITY request"
<Location /svn>
DAV svn
SVNParentPath /srv/repositories
SVNListParentPath On
AuthType Basic
AuthName "Synesis Web Subversion Repository"
AuthUserFile /etc/subversion/passwd
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
No comments:
Post a Comment