Table of Contents
Subversion Repository installation
Packages
apt-get install subversion
Configuration
Edit /etc/vhffs/vhffs.conf
<svn> # Use this module or not activate = yes # URL to the svnweb svnweb_url = "http://svnweb.domain.com" # From: of emails sent by svn commit notifier notify_from = subversion@domain.com # URL to the documentation (optional) url_doc = http://help.domain.net/svn </svn>
Then, activate the bots with a cron file, for example, /etc/cron.d/vhffs
#*/10 * * * * root ionice -c3 nice -n 19 /usr/lib/vhffs/bots/svn_create.pl #*/10 * * * * root ionice -c3 nice -n 19 /usr/lib/vhffs/bots/svn_delete.pl #*/10 * * * * root ionice -c3 nice -n 19 /usr/lib/vhffs/bots/svn_public.pl
Initiate a new repository
Create a repository through the panel.
SVN using SSH authentication needs full NSS support, please check the local NSS database is filled up with passwd and shadow data.
We recommends you to:
- Create a chroot for subversion.
- Not install VHFFS in this chroot.
- Fill the NSS database from outside the chroot
- Use a restricted shell service that allows only running the subversion binary, you will find in the VHFFS source tree a dummy shell called tuxshell in the
/vhffs-shells
directory. - Only mount bind, or nfs mount, or whatever mount, the
/data/svn
directory in the chroot.
Finally, check from your local machine
svn co svn+ssh://user@domain.com/your/path/to/svnroot/group/namesvn localcopyname cd localcopyname svn up svn add filename #add a file to repository svn ci #commit change
WebSVN and ViewVC
Two crons are generating configuration files for WebSVN and ViewVC in /data/svn/conf
, we let you find how to use them.
#*/10 * * * * root ionice -c3 nice -n 19 /usr/lib/vhffs/bots/svn_viewvcconf.pl #*/10 * * * * root ionice -c3 nice -n 19 /usr/lib/vhffs/bots/svn_websvn.pl