En anteriores ocasiones ya hablé de cómo instalar un servidor CVSNT en Windows XP y en Windows 2008 Server, así que ya iba siendo hora de hablar de su relevo generacional, en varios sentidos. En esta ocasión, vamos a ver cómo instalar un servidor Subversion (también llamado SVN) bajo Ubuntu GNU/Linux. Además, vamos a hacer que su acceso sea mucho más sencillo, al utilizar como protocolo de acceso el propio HTTP, gracias a WebDAV.
- Obviamente, lo primero será instalar un servidor Web, en este caso Apache2: sudo apt-get install apache2
- Lo siguiente es instalar el software de Subversion: sudo apt-get install subversion
- A continuación hay que instalar el módulo de SVN para Apache: sudo apt-get install libapache2-svn
- Ahora debemos meternos con el propio repositorio SVN…
- Lo primero será crear el propio repositorio: sudo svnadmin create /svn
- Cambiaremos el propietario del repositorio al del servidor Web: sudo chown -R www-data.www-data /svn
- También cambiaremos los permisos de los archivos, para evitar problemas: sudo chmod -R 770 /svn
- Editamos el fichero de configuración “/etc/apache2/mods-enabled/dav_svn.conf” para retocar unos detalles:
- Descomentar las líneas “#<Location /svn>” (línea 13) y “#</Location>” (línea 54).
- Descomentar la línea “#DAV svn” (línea 16).
- Descomentar la línea “#SVNPath /var/lib/svn” (línea 19) y configurarla para que contenga la ruta al repositorio que creamos anteriormente, en nuestro caso “SVNPath /svn”.
- Descomentar las líneas 40, 41 y 42, que contienen los parámetros “AuthType”, “AuthName” y “AuthUserFile”.
- Añadir, tras las líneas anteriores, una nueva con el texto “Require valid-user”.
- Ahora debemos añadir los usuarios.
- El primero lo haremos con la siguiente orden: sudo htpasswd -cm /etc/apache2/dav_svn.passwd usuario
- Para todos los demás, utilizaremos esta variación: sudo htpasswd -m /etc/apache2/dav_svn.passwd otro_usuario
- Por último, reiniciamos el servidor Apache: sudo /etc/init.d/apache2 restart
¡Listo! Ya podemos acceder a nuestro repositorio SVN mediante la URL “http://servidor/svn”, tanto desde un navegador Web, como desde cualquier IDE de desarrollo.

Mola! Muy parecido a como lo tengo yo :)
¿Teneis pensado utilizar “trac” o similares para el control de los cambios, tickets, etc?
En mi caso uso trac, pero seguro que aqui me iluminais con algun otro sistema libre que funcione mejor ^_^
La verdad es que no lo tenemos, aunque estamos rumiarlo montar uno…