Instalación Subversion Ubuntu 12.04

En esta ocasión veremos como instalar un sistema de control de versiones. Muy útil cuando sobre el mismo proyecto trabajan dos personas o más. O simplemente para llevar  nosotros un control de lo que vamos modificando.

Requisito tener instalado apache2. Podéis consultar cómo en: Instalar lamp+phpmyadmin o en en OpenSUSE

Comenzamos instalando desde un terminal subversion

sudo aptitude install subversion subversion-tools libapache2-svn

El paquete subversion-tools no es del todo necesario, si queremos lo podemos omitir.

Con esto ya tenemos instalado el sistema de control de versiones. Ahora debemos configurarlo.

En el directorio /etc/apache2/mods-enabled/ está el archivo dav_svn.conf donde procedemos a configurar subversion.

En este archivo tenemos un ejemplo de configuración. Donde debemos ir descomentando las líneas que deseamos o simplemente borrar su contenido (mejor si hacemos copia de seguridad) y crear el nuestro propio. Un ejemplo de configuración con autenticación sería:

<Location /pruebas>
DAV svn
SVNPath /var/lib/svn/pruebas
AuthType Basic
AuthName "Repositorio de pruebas"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
</Location

Con esto indicamos que tendremos un repositorio llamado pruebas que se ubicará en /var/lib/svn/pruebas (tal vez en tu máquina no exista el directorio /var/lib/svn, tendrás que crearlo o ubicarlo donde creas más mejor). Las cuatro siguientes lineas son para la autenticación. Le indicamos que el tipo de autenticación será básico y una descripción del repositorio. AuthUserFile indica el archivo donde estarán los usuarios que podrán acceder al repositorio y Require valid-user fuerza a pedir usuario y contraseña.

Con esto ya está seteado el archivo de configuración de subversion.

A continuación crearemos el repositorio. Como decía, si el directorio /var/lib/svn/ no está creado debemos crearlo

sudo mkdir /var/lib/svn

Para después crear el repositorio:

sudo svnadmin create /var/lib/svn/pruebas

Ahora creamos la estructura básica de un repositorio de subversion:

sudo svn mkdir --message="Setting up the directories..." \
  file:///var/lib/svn/pruebas/trunk \
  file:///var/lib/svn/pruebas/tags \
  file:///var/lib/svn/pruebas/branches

Como una forma de acceder muy frecuenta es vía web tendremos que asignar el propietario adecuado de la siguiente manera:

sudo chown www-data:www-data  /var/lib/svn/pruebas -R

Y por último reiniciamos el servidor:

sudo /etc/init.d/apache2 restart

Lo único que nos queda es crear los usuarios que podrán acceder a dicho repositorio

sudo htpasswd -c /etc/apache2/dav_svn.passwd usuario

Usamos -c dado que el archivo /etc/apache2/dav_svn.passwd no existe, con esto, htpasswd lo crea e introduce el usuario que hemos indicado. Nos pedirá dos veces la pass de dicho usuario y ya tenemos subversion configurado.

Para agregar más de un usuaruio, el comando anterior eliminará el usuario creado anteriormente, con lo que para agregar otro usuario adicional usaremos

sudo htpasswd /etc/apache2/dav_svn.passwd otro_usuaruio

Espero que os sea de ayuda

Anuncios

Acerca de Tali

Loco por el mundo GNU/Linux, la programación, la web y la tecnología en general. @ajgalisteo83
Esta entrada fue publicada en Programación, Seguridad, Ubuntu. Guarda el enlace permanente.

3 respuestas a Instalación Subversion Ubuntu 12.04

  1. lorenzo lamas dijo:

    gracias! probando

  2. Pedro dijo:

    ¿Como accedo al repositorio desde tortoisse? como configuro la dirección del dominio en apache

  3. Tali dijo:

    Para acceder desde Tortoise configura el repo con la ip del mismo y ya está. La dominio tienes que configurarlo con tu ISP y en el .conf de apache

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s