17 de abril de 2010

Subversion - Instalación, Configuración, Administración

Subversion

Es una herramienta que permite administrar los cambios efectuados en documentos, programas, entre otros. Las distintas revisiones pueden ser comparadas, restauradas o combinadas con otros archivos.

Ventajas de utilizar esta herramienta

  • Respaldo y restauración: Los archivos, que hayan sido versionados, pueden ser recuperados en cualquier momento.
  • Sincronización: Permite a todos los miembros dentro del equipo contar con la última versión del código de la aplicación.
  • Deshacer los cambios: Si se han efectuado cambios erróneos, o se ha modificado un archivo que no debía de ser manipulado, es posible deshacer los cambios retornando a la última versión almacenada en el servidor.
  • Seguimiento de Cambios: Es posible determinar el cambio efectuado en el archivo según el comentario dejado por la persona quien lo efectuó. Así mismo, es posible determinar quien o quienes manipularon el archivo.
  • Branching and Merging: Es posible crear un espacio (branching) para efectuar pruebas sobre algunas funcionalidades del código para más adelante proceder a anexar (merging) dichos cambios con el código principal de la aplicación.
  • Estandarización: Fuerza a desarrollar sobre un código estandarizado, debido a que más de un desarrollador trabajará sobre los mismos archivos.
  • Empleo de buenas prácticas: El emplear buenas prácticas de programación facilitará la lectura del código por parte de los involucrados en el proyecto; esto permitirá una mayor eficiencia y un ahorro de tiempo al efectuar cambios.

Configuración

Estos son los pasos necesarios para configurar un servidor subversion:

Instalar Subversion

# yum install subversion mod_dav_svn

Crear los directorios de Subversion

# mkdir /var/subversion
# mkdir /var/subversion/config
# mkdir /var/subversion/repos

Iniciar el Subversion

# svnserve -d -r /var/subversion/repos

Registro de un proyecto

Estos son los pasos a realizar al crear un nuevo proyecto.

Crear un nuevo proyecto

# svnadmin create /var/subversion/repos/[nombre_proyecto]

Editar la configuración del proyecto

# vim /var/subversion/repos/[nombre_proyecto]/conf/svnserve.conf

Contenido del archivo

[general]

anon-access = none

auth-access = write

password-db = /var/subversion/config/passwd

authz-db = /var/subversion/config/authz

realm = [nombre_proyecto] Repository

Configurando accesos al repositorio

Para configurar los accesos a cada proyecto, es necesario editar los siguientes archivos:

Archivo Password

Nombre del Archivo: /var/subversion/config/passwd

Descripción: Archivo que contiene las contraseñas asignadas a cada usuario.

Contenido:

[users]

usuario_1=password_usuario_1

usuario_2=password_usuario_2

usuario_3=password_usuario_3

usuario_4=password_usuario_4

Archivo Authz

Nombre del Archivo: /var/subversion/config/authz

Descripción: Archivo que contiene los permisos de acceso de cada usuario a cada proyecto registrado.

Contenido:

# Listado de grupos

[groups]

grpProyecto1 = usuario_1,usuario_2

grpProyecto2 = usuario_1,usuario_3

grpAdmin = usuario_1

# Raíz. Los accesos registrados en esta sección aplicarán a todos los proyectos

[/]

usuario_4 = rw

@grpAdmin = rw

# Accesos registrados para el Proyecto 1

[Nombre_Proyecto_1:/]

@grpProyecto1 = rw

# Accesos registrados para el Proyecto 2

[Nombre_Proyecto_2:/]

@grpProyecto2 = rw

Nota: Los Nombres_Proyecto son el nombre de los proyecto que se utilizaron al ejecutar el comando

# svnadmin create
.

No hay comentarios:

Publicar un comentario