Instalación y configuración sencilla de Subversion en Ubuntu / Debian

A través del siguiente post se pretenden describir los pasos necesarios para realizar un despliegue sencillo de Subversion en Ubuntu / Debian.

sudo apt-get install subversion subversion subversion-tools

Una vez instalado Subversion "a partir de ahora svn", será necesario crear los directorios donde se almacenarán los repositorios correspondientes. En este caso, se crearán los directorios dentro de home. Por lo tanto, se ejecutarán los siguientes comandos.

sudo mkdir /home/svn
sudo mkdir /home/svn/repositorio

Posteriormente, se creará el repositorio correspondiente empleando svnadmin de la siguiente forma:

sudo svnadmin create /home/svn/repositorio

Para realizar el acceso al repositorio, se empleará el protocolo propietario de svn. Por lo tanto, será necesario modificar la configuración del repositorio para habilitar la autenticación. Es necesario posicionarse en la carpeta CONF del repositorio, por lo tanto se ejecutará el siguiente comando:

cd /home/svn/repositorio/conf

Para modificar el archivo de configuración, emplear el editor que consideréis oportuno. Por ejemplo, si se emplea nano, se ejecutará el siguiente comando:

sudo nano svnserve.conf

Las opciones que se modificarán serán las siguientes:

Descomentar las opciones a non-access y auth-access de tal forma que los usuarios anónimos no tengan acceso y los usuario autenticados puedan escribir.

anon-access = none
auth-access = write

modificar svnserver.conf directivas

Para poder emplear el fichero de contraseñas, será necesario descomentar la siguiente línea:

password-db = passwd 

modificar svnserver.conf directivas


Nota: No hay que dejar espacios entre la directiva descomentada y el margen izquierdo. Si se dejan espacios al descomentar las líneas, la configuración no funcionará.

Una vez modificada la configuración, será necesario añadir el usuario o los usuarios que podrán hacer uso de SVN. Por lo tanto, se modificará el fichero de passwd:

sudo nano passwd

Se añadirá un usuario empleando el siguiente criterio:

usuario = contraseña

Añadir usuario a passwd svn

Finalmente, solo hará falta arrancar el demonio en segundo plano empleado el siguiente comando:

sudo svnserve -d --foreground -r /home/svn

Para acceder desde otro equipo Linux al servidor, se ejecutará el siguiente comando:

svn co svn://hostname/repositorio repositorio --username cdui --password mipassword

Nota: Hostname será la dirección IP o el nombre del host del servidor donde se ha configurado SVN. 

Si se quiere acceder desde un equipo Windows, se puede emplear Tortoise. Destacar que si se quiere configurar SVN para que arranque al inicio, se puede modificar cron para añadir el comando de svnserve y que se ejecute al inicio. Para mas información acerca de como configurar el SVN para que se inicie nada mas ejecutar el equipo, véase el siguiente artículo.