Subversion es un sistema de control de versiones. Todos los ficheros se mantienen en un repositorio central pudiendo así recuperar versiones de un fichero y actualizarlos.

A continuación explicaremos como instalar un servidor de Subversion en un Ubuntu Server.

Instalación Subversion

Instalamos los paquetes que nos hacen falta para crear repositorios:

apt-get install subversion subversion-tools


Instalación Apache

Necesitamos dos módulos de apache instalados en nuestro servidor, si haremos uso de svn mediante web. Los modulos son dav y dav_svn.

apt-get install libapache2-svn


Configuración

1.- Creamos el directorio en el que pondremos el repositorio:

mkdir /var/svn

 

2.- Creamos el repositorio:

svnadmin create /var/svn/repositorio


Configuración Apache

1.- Creamos un VirtualHost en nuestro Apache con el siguiente contenido: 

<VirtualHost *>
ServerName www.midominio.com

DocumentRoot /var/www/

### Subversion ####
<Location /svn>
DAV svn
SVNPath /var/svn/repositorio
AuthType Basic
AuthName "SVN validation"
AuthUserFile /var/svn/dav_svn.passwd
AuthzSVNAccessFile /var/svn/dav_svn.authz
Require valid-user
#SSLRequireSSL
</Location>

</VirtualHost>

 

2.- Creamos el fichero de usuarios de subversion:

vi /var/svn/dav_svn.authz
[groups]
administradores = usuario,usuario2,usuario3
[/]
@administradores = rw

Como se puede ver hemos dado permisos de lectura/escritura a todo el grupo "administradores".

 

3.- Definimos la contraseña de cada usuario mediante el comando:

htpasswd  /var/svn/dav_svn.passwd usuario