• Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.
Mi Blog
✰ Cómo instalar y configurar tu servidor de Subversion en GNU/Linux Debian

✰ Cómo instalar y configurar tu servidor de Subversion en GNU/Linux Debian

Apache Subversion (abreviado frecuentemente como SVN, por el comando svn) es una herramienta de control de versiones open source basada en un repositorio cuyo funcionamiento se asemeja enormemente al de un sistema de ficheros. Es software libre bajo una licencia de tipo Apache/BSD.

Utiliza el concepto de revisión para guardar los cambios producidos en el repositorio. Entre dos revisiones sólo guarda el conjunto de modificaciones (delta), optimizando así al máximo el uso de espacio en disco. SVN permite al usuario crear, copiar y borrar carpetas con la misma flexibilidad con la que lo haría si estuviese en su disco duro local. Dada su flexibilidad, es necesaria la aplicación de buenas prácticas para llevar a cabo una correcta gestión de las versiones del software generado.

En este nuevo tutorial voy a enseñaros como instalar Subversion en un equipo con GNU/Linux Debian y su configuración básica para dejarlo funcionando. La personalización y configuración más profunda os la dejo de vuestro lado y dependerá de los requisitos de cada uno.

El manual es muy sencillo y seguro que no tendréis problemas en seguirlo con mis indicaciones. ¡Allá vamos!

1.- INSTALACIÓN DE SUBVERSION

Primero actualizaremos el repositorio de paquetes del sistema y luego instalaremos el paquete de subversion. Por tanto, ejecutaremos estos 2 comandos como root o con sudo:

# apt-get update
# apt-get install subversion

Una vez terminada la instalación, crearemos el directorio en el cual se ubicarán los ficheros del subversion y los posteriores repositorios. En mi caso utilizaré /var/subversion, pero podemos utilizar cualquier otro:

# mkdir /var/subversion

Dentro del directorio creado en el paso anterior (/var/subversion), crearemos un nuevo Repositorio para nuestro código/ficheros. Usaré el nombre de repositorio storerun:

# svnadmin create /var/subversion/storerun

Ahora arrancaremos el servicio de SVN para todos nuestros repositorios con el siguiente comando:

# svnserver -d -r /var/subversion/

Con estos sencillos pasos ya tenemos instalado nuestro SVN, hemos creado nuestro proyecto/repositorio y el servicio se encuentra funcionando.

2.- ACCEDER DESDE WINDOWS AL REPOSITORIO SVN

Para probar nuestro SVN desde un cliente con Windows, bajaremos un cliente de SVN. A mi personalmente me gusta muchísimo TortoiseSVN y os explicaré como se usa brevemente. Descargamos el software desde http://www.tortoisesvn.net y lo instalamos con el procedmiento habitual en Windows.

Subversion GNU/Linux

Logotipo de TortoiseSVN

Una vez instalado nuestro cliente de SVN Tortoise, crearemos en nuestro equipo local Windows un directorio en el cual irán los repositorios. He creado en mi escritorio un directorio llamado SVN donde irán todos los repositorios, y dentro de él, otro directorio con mi único repositorio llamado storerun. Haremos click con el botón derecho y ejecutaremos "SVN Checkout". Con esto lo que conseguimos es que se realice una sincronización edlos datos del SVN a nuestro equipo local. Como el SVN está vacío, esta sincronización no descarga ningún contenido.


Subversion GNU/Linux

SVN Checkout

En la siguiente pantalla se puede ver la IP remota del servidor,el repositorio y el destino en nuestro equipo local:

Subversion GNU/Linux

Configuración Checkout

El proceso es muy rápido al no tener que sincronizar absolutamente nada y veremos una pantalla como esta. Revisión 0

Subversion GNU/Linux

Checkout finalizado

Ahora lo que haremos será probar si podemos añadir contenido a nuestro repositorio a través de TortoiseSVN. Para ello, crearemos un fichero de texto en nuestro directorio local y haremos click con el botón derecho y seleccionaremos TortoiseSVN->Add:

Subversion GNU/Linux

Añadir un nuevo fichero

El fichero está marcado como "fichero a añadir" en nuestro ciente SVN. Necesitamos hacer el COMMIT para que el fichero se envie al servidor SVN. Hacemos click botón derecho y SVNCommit:

Subversion GNU/Linux

Commit de los cambios

Antes de hacer finalmente el commit, se nos pide que pongamos un mensaje descriptivo. Es útil para ir añadiendo comentarios del por qué de los cambios. Por ejemplo "Añadida funcionalidad para ficheros JPG de más de 50Mb":

Subversion GNU/Linux

Comentarios del Commit

Nuestro Commit ha fallado! ¿Por qué? El problema está muy claro, tenemos permisos de lectura pero no tenemos permisos de escritura en el SVN. En el siguiente paso explicaré como crear dichos permisos para una atuenticación básica de SVN.

Subversion GNU/Linux

Fallo en la autorización

03.- CONFIGURACIÓN DE LOS ACCESOS

Para configurar los accesos, debemos editar el fichero /var/subversion/storerun/conf/svnserve.conf y configurarlo de la siguiente forma:

[General] // Debemos respetar el orden
anon-access = none
auth-access = read
auth-access = write
password-db = passwd

Y por último tenemos que crear un usuario y contraseña para acceder al SVN. Editamos el fichero /var/subversion/storerun/conf/passwd y añadimos un usuario y contraseña de la siguiente forma:

[users]
raul = raulsvn

Ahora volvemos a realizar el commit y veremos que nos pide por un usuario y contraseña:

Subversion GNU/Linux

Prompt de Usuario y Contraseña

Introducimos los datos de un usuario válido en el SVN:

Subversion GNU/Linux

Datos del usuario

Finalmente veremos que nuestro fichero se ha añadido satisfactoriamente a nuestro SVN como la Revision 1.

Subversion GNU/Linux

Commit finalizado satisfactoriamente

Los ficheros y directorios añadidos correctamente aparecerán en nuestro equipo con un Check verde:

Subversion GNU/Linux

Check verde del fichero

ENJOY!


Raúl Prieto Fernández

Sitio Web: /

Si quieres ir rápido, ve solo. Si quieres llegar lejos, ve acompañado.

Escribir un comentario

Información básica sobre Protección de Datos

Responsable: Raúl Prieto Fernández +info

Finalidad: Moderar los comentarios a los artículos publicados en el blog. +info

Legitimación: Consentimiento del interesado +info

Destinatarios: No se comunicarán datos a persona u organización alguna. +info +info

Derechos: Tiene derecho a Acceder, rectificar y suprimir los datos, así como otros derechos, como se explica en la información adicional. +info

Plazo de conservación de los datos: Hasta que no se solicite su supresión por el interesado.

Información adicional: Puede consultar la información adicional y detallada sobre Protección de Datos Personales en mi página web raulprietofernandez.net +info

Código de seguridad
Refescar


LOGIN / ENTRAR

BUSCAR EN EL BLOG

TWITTER TIMELINE

Booking.com

ENCUESTA

¿Cual es el mejor Sistema Operativo?

Como es lógico, esta web utiliza cookies propias y de terceros para elaborar información estadística y mostrar publicidad personalizada a través del análisis de tu navegación, conforme a la política de cookies.

  Si continúas navegando, aceptas su uso.