HOWTO - Managing subversion repositories


Getting started

Check for existence of your parent path (see List of related files/directories) directory. Otherwise, contact system administrator.
It is assumed, that $LOGNAME is your system username, login. Copy-pasting any commands (without leading '$') below directly into console should work if LOGNAME environment variable is set.


Creation of repository

The command $ svnadmin create /var/svn/$LOGNAME/new_repo will create new_repo svn repository. Who'd thought that?! :)))


Permissions

First, to get things work, all files in /pathto/repo/reponame files must be owned by yourself and belong to the apache group.
Second, they have to be writable by group to allow web server writes.
So, $ chown -R .apache /var/svn/$LOGNAME/new_repo $ chmod -R g+w,o-rwx /var/svn/$LOGNAME/new_repo will do all you need... :)
NOTE: No OTHER files or directories is allowed in the parent path! That is, there must reside ONLY svnadmin-created directories under /var/svn/$LOGNAME/ !


Managing passwords

You have to be in the wheel group to do this. Contact system administrator if not.
Using: $ sudo htpasswd -m /etc/httpd/svn.passwd $LOGNAME will change/create MD5-hashed (hence -m option) password for $LOGNAME.


FTP access

Login with your credentials and do any magic under your parent path.


List of related files/directories

Full pathDescription
/var/svn/$LOGNAME/your collection of repositories parent directory
/etc/httpd/svn.passwdpasswords, manage with htpasswd
/etc/httpd/.$LOGNAME.authsubversion authorisation file

Links