Configure SVN
Configure SVN Organic Design procedure |
Contents
Setting up the SVN repository
The necessary packages should already have been installed as part of the organicdesign-server package, but if not, you'll need to apt-get install subversion libapache2-svn. Then the first step is to create the repositories as in the following example.
Next create a subversion group and add your developers to it:
Logging Commits
Create a post-commit hook in your /svn/REPO/hooks/post-commit (change REPO accordingly) file containing the following:
Create a file to log the commits to and set permissions of the log and hook script:
Configuring client access
The first issue with client access over SSH is that we use a non-standard port, but there is no svn switch to set this, so we need to create a specific tunnel in the subversion configuration for our server with the correct port set. Add the following to the tunnels section of ~/.subversion/config file using your own servers name and SSH port.
You will now be able to check out a repository or branch using the following syntax (the USER@ portion is only required if you are connecting from root or another users shell session).
Note that you will be required to enter your SSH password for every transaction with the svn repository, so the following steps are required to get rid of this annoying problem.
WebSVN
MediaWiki uses viewvc for web viewing of their svn repositories, but the installation and configuration are a bit of a pain since its a Python CGI script rather than PHP like all our other web applications. So for this reason we're using the PHP websvn from Tigris instead.
Installation of websvn is a simple matter of downloading into /var/www/domains/websvn and creating a sub-domain and virtual host entry for it as for any other PHP web application. Next make a copy of the default config file:
And add a single entry in the repositories section pointing at the parent directory of your repositories, for example:
And that's all there is to it! no simply browse to your sub-domain, ours is http://svn.organicdesign.co.nz