You are on page 1of 26

MANUAL INTERNO Gua de Uso de Subversion

Versin 1.2

rea de Integracin y Arquitectura de Aplicaciones

Framework Atlas
Gua de Uso de Subversion Hoja de Control

Ttulo Documento de Referencia Responsable Versin

Gua de Uso de Subversion

rea de Integracin y Arquitectura de Aplicaciones 1.2 Fecha Versin 26/03/2012

Registro de Cambios Versin 1.0 Causa del Cambio Versin inicial del documento Aadidas instrucciones para Revert y marcar un directorio como Derived. Modificado el nombre del tag, incluido nombre del mdulo que se entrega Responsable del Cambio rea de Integracin y Arquitectura de Aplicaciones rea de Integracin y Arquitectura de Aplicaciones rea de Integracin y Arquitectura de Aplicaciones 23/09/2011 03/06/2011 02/06/2011 Fecha del Cambio

1.1

1.2

2 de 26

Framework Atlas
Gua de Uso de Subversion

ndice

1.

INTRODUCCIN ................................................................................................................................................................ 4 1.1. 1.2. AUDIENCIA OBJETIVO .............................................................................................................................................. 4 CONOCIMIENTOS PREVIOS ...................................................................................................................................... 4

2. 3. 4.

ESTRUCTURA DE REPOSITORIOS DE SUBVERSION EN ICM .............................................................................. 5 INSTALACIN DEL PLUGIN DE SUBVERSION PARA ECLIPSE ........................................................................... 7 USO BSICO DE SUBVERSION..................................................................................................................................... 10 4.1. 4.2. 4.3. 4.4. 4.5. 4.6. 4.7. 4.8. AADIR UN REPOSITORIO ...................................................................................................................................... 10 DESCARGAR UN PROYECTO .................................................................................................................................. 12 VER DIFERENCIAS ENTRE EL PROYECTO LOCAL Y EL REPOSITORIO ......................................................... 14 ACTUALIZAR LA COPIA LOCAL ............................................................................................................................ 15 SUBIR LOS CAMBIO LOCALES AL REPOSITORIO .............................................................................................. 17 VER LOS CAMBIOS QUE SE HAN HECHO SOBRE UN DIRECTORIO O FICHERO........................................... 19 DESHACER LOS CAMBIOS LOCALES.................................................................................................................... 20 MARCAR UN DIRECTORIO PARA QUE NUNCA SE SUBA AL REPOSITORIO ................................................. 22

5.

REALIZACIN DE UNA ENTREGA PARA SU INSTALACIN EN LOS ENTORNOS DE ICM ........................ 23

3 de 26

Framework Atlas
Gua de Uso de Subversion

1. INTRODUCCIN

En este documento se explica el uso de la herramienta de control de versiones Subversion para el desarrollo y mantenimiento de aplicaciones para ICM. En l se explica la instalacin del plugin de Subversion para el entorno de desarrollo Eclipse, as como el uso de este plugin para subir modificaciones al repositorio y realizar entregas para su instalacin en los distintos entornos de ICM.

1.1.

AUDIENCIA OBJETIVO

Este documento va dirigido a todas aquellas personas que requieran usar Subversion para desarrollar o mantener aplicaciones para ICM.

1.2.

CONOCIMIENTOS PREVIOS

Para un completo entendimiento del documento, el lector deber tener conocimientos previos sobre el entorno de desarrollo Eclipse V3.5 (Galileo).

4 de 26

Framework Atlas
Gua de Uso de Subversion

2. ESTRUCTURA DE REPOSITORIOS DE SUBVERSION EN ICM Todo proyecto en ICM desarrollado con ATLAS tiene un repositorio de Subversion propio. Se puede acceder al repositorio de un determinado proyecto utilizando cualquier cliente de Subversion (como SlikSVN, TortoiseSVN, Subclipse, etc.), o tambin utilizando un browser y accediendo a la URL del repositorio.

URL del servidor de Subversion de un proyecto URL: https://RutaServidorSVN/svn/ProyectoMinusculas/ Valores de las variables: RutaServidorSVN: Ruta del servidor de Subversion (por defecto es https://subversion01:8443 ) ProyectoMinusculas: Nombre del proyecto en minsculas (Ej: bsta). Ejemplo: https://subversion01:8443/svn/bsta/ Si accedemos con un explorador a la URL de un repositorio podemos navegar por su contenido:

Nota Cada repositorio de un proyecto tiene asignada una seguridad para que slo las personas autorizadas puedan ver el cdigo y realizar modificaciones sobre l.

5 de 26

Framework Atlas
Gua de Uso de Subversion Todo repositorio de un proyecto en ICM tiene la misma estructura, que consiste en las siguientes carpetas: entregas: Cada vez que se desea instalar un proyecto o mdulo en cualquier entorno de ICM, se crea una foto del cdigo en un momento determinado, que ser la que se instale en el entorno deseado. En la nomenclatura de Subversion, una foto congelada del cdigo se denomina TAG. Todos los tags creados para instalar en los distintos entornos de ICM se crean en esta carpeta entregas. instalaciones: Se trata de una carpeta de uso interno por las unidades de Paso a Produccin y Recepcin de Aplicaciones. vXXXX: Cada versin de desarrollo que se mantenga para el proyecto tendr una carpeta especfica. Por ejemplo, si se est desarrollando una nueva versin del proyecto y a la vez se est realizando mantenimiento correctivo sobre el actual, habr dos carpetas, una para cada versin.

6 de 26

Framework Atlas
Gua de Uso de Subversion 3. INSTALACIN DEL PLUGIN DE SUBVERSION PARA ECLIPSE Para que desde Eclipse se pueda acceder a proyectos que se encuentran en un repositorio de subversion es necesario instalar un plugin llamado Subclipse.

Nota Si en este momento el lector no tiene instalado en su mquina el entorno de desarrollo de aplicaciones Eclipse, se puede optar por una de las siguientes opciones: 1) Seguir los pasos del manual ATLAS_MUS_Preparacion_Entorno_Desarrollo.doc en el que se describe cmo instalar el entorno de desarrollo. 2) Utilizar el CD de Desarrollo y Mantenimiento de aplicaciones ATLAS que incluye todo lo necesario para comenzar a desarrollar/mantener aplicaciones.

La forma recomendada para la instalacin del plugin de Subclipse es mediante la URL de update de plugin http://subclipse.tigris.org/update_1.6.x tal y como se indica a continuacin.

Dentro de Eclipse vamos a la opcin Help->Install New Software, y en la pantalla que aparece pulsamos sobre Add para agregar una nueva direccin:

7 de 26

Framework Atlas
Gua de Uso de Subversion

Una vez aadido el sitio, seleccionamos los plugins segn la siguiente pantalla:

8 de 26

Framework Atlas
Gua de Uso de Subversion

Con esto habremos completado la instalacin del plugin. Si se nos solicita que reiniciemos el entorno, aceptaremos para que Eclipse vuelva a arrancar con el plugin instalado.

9 de 26

Framework Atlas
Gua de Uso de Subversion 4. USO BSICO DE SUBVERSION Para poder utilizar la funcionalidad que nos ofrece el plugin Subclipse, debemos acceder a una vista especial llamada SVN. Para ello, desde la perspectiva java por defecto seleccionaremos en el men la opcin Window>Show View->Other->SVN y seleccionaremos la opcin SVN repositories. Otra opcin es pulsar directamente sobre el icono de la vista de SVN en la parte superior derecha de Eclipse segn se muestra en la siguiente figura:

4.1.

AADIR UN REPOSITORIO

Una vez que estamos en la vista SVN Repositories, lo primero que debemos hacer es aadir un repositorio de Subversion a esta vista, para poder comenzar a realizar acciones sobre l. Para mostrar los repositorios instalados actualmente, debemos pulsar sobre el icono SVN Repositories situado en la zona inferior izquierda de la pantalla, segn se muestra en la siguiente figura:

10 de 26

Framework Atlas
Gua de Uso de Subversion

Para aadir un nuevo repositorio, pulsamos con el botn derecho sobre el listado de repositorios, y seleccionamos New -> Repository Location:

11 de 26

Framework Atlas
Gua de Uso de Subversion

Introducimos entonces la URL del repositorio de Subversion que deseamos aadir, y pulsamos sobre el botn Finish:

En este momento ya podemos navegar por el repositorio de Subversion recin aadido. 4.2. DESCARGAR UN PROYECTO

Para descargar un proyecto del repositorio de Subversion a nuestra mquina local, debemos situarnos sobre el

12 de 26

Framework Atlas
Gua de Uso de Subversion directorio raz del proyecto que deseamos descargar, pulsar con el botn derecho y seleccionar la opcin Checkout:

En el cuadro de dilogo que aparece, debemos seleccionar la opcin Checkout as a Project in the Workspace, y escribir el nombre que queremos dar al proyecto en nuestra mquina. Pulsaremos directamente sobre Finish, y con esto habremos concluido con la descarga del proyecto.

Si volvemos a la perspectiva habitual Java, o J2EE pulsando sobre el botn correspondiente del listado de perspectivas , podemos ver cmo se ha aadido el nuevo proyecto a nuestro Workspace.

13 de 26

Framework Atlas
Gua de Uso de Subversion

4.3.

VER DIFERENCIAS ENTRE EL PROYECTO LOCAL Y EL REPOSITORIO

Mientras que nos encontramos trabajando con nuestra copia local del proyecto, es posible que otros desarrolladores hayan subido sus modificaciones al repositorio. Para ver las diferencias entre nuestra copia local y la ltima versin del repositorio, pulsamos con el botn derecho sobre el proyecto y seleccionamos Team -> Synchronize with repository:

14 de 26

Framework Atlas
Gua de Uso de Subversion

Se muestra entonces una ventana con las diferencias entre nuestra copia local y el repositorio remoto. En el siguiente ejemplo, segn la forma de las fechas puede verse cmo se ha modificado en local el fichero 823E4.rtf, se han aadido en local los ficheros .project y PRUEBA.rtf, y alguien modific en el repositorio remoto el fichero 823E2.rtf:

4.4.

ACTUALIZAR LA COPIA LOCAL

Si queremos actualizar nuestra copia local con las ltimas versiones del repositorio remoto, debemos pulsar con el botn derecho sobre la carpeta o ficheros que queremos actualizar, y seleccionamos Team -> Update to HEAD.

15 de 26

Framework Atlas
Gua de Uso de Subversion

Con esto quedar actualizado el proyecto local con las ltimas versiones del repositorio. Nota Si al actualizar el proyecto local alguien modific un fichero que nosotros tambin hemos modificado, Subversion NUNCA machacar nuestra copia local (no perderemos nuestros cambios). Dependiendo del tipo de fichero: Si se trata de un fichero binario, Subversion nos informa del conflicto y debemos resolverlo. Si se trata de un fichero de texto: Subversion intenta automticamente juntar los dos cambios en el fichero local (operacin merge). Si es posible lo hace, y si no nos informa del conflicto. Para ver los ficheros que se han modificado, as como todas las acciones que vamos realizando con Subversion, podemos mostrar la consola de Subversion en la parte inferior de la pantalla. Para ello pulsamos sobre el botn situado en la parte superior de la consola de Eclipse, y en el desplegable que aparece seleccionamos SVN Console:

16 de 26

Framework Atlas
Gua de Uso de Subversion

En ese momento podemos ver en la consola todas las acciones que se han ido realizando con Subversion:

4.5.

SUBIR LOS CAMBIO LOCALES AL REPOSITORIO

Si hemos realizado modificaciones en nuestro proyecto, los ficheros modificados se mostrarn con un asterisco en la zona inferior derecha del icono, y los aadidos con una interrogacin:

Para subir los cambios realizados al repositorio, pulsaremos con el botn derecho sobre la carpeta o ficheros que queremos actualizar, y seleccionamos Team -> Commit.

17 de 26

Framework Atlas
Gua de Uso de Subversion

En ese momento se mostrar un cuadro de dilogo en el que debemos introducir un texto indicando los cambios que hemos realizado, y podemos seleccionar cules de todos los ficheros modificados deseamos subir:

Introduciremos la descripcin del cambio y pulsaremos sobre OK.

18 de 26

Framework Atlas
Gua de Uso de Subversion Nota Aunque subversion permite subir modificaciones al repositorio dejando el campo de comentario vaco, esto no se considera una buena prctica. Siempre que se suba alguna modificacin al repositorio se introducir un comentario describiendo el cambio.

4.6.

VER LOS CAMBIOS QUE SE HAN HECHO SOBRE UN DIRECTORIO O FICHERO

En ocasiones queremos ver el histrico de cambios que se han realizado sobre un directorio o fichero del repositorio de Subversion. Para hacerlo, pulsaremos con el botn derecho sobre la carpeta o fichero, y seleccionamos Team -> Show History.

Se mostrar entonces en la zona de la consola el histrico de modificaciones:

19 de 26

Framework Atlas
Gua de Uso de Subversion

Si deseamos ver las diferencias entre dos versiones concretas del cdigo, mantenemos la tecla Control del teclado pulsada, y seleccionamos las dos versiones que queremos comparar. Pulsamos entonces con el botn derecho sobre ellas y seleccionamos la opcin Compare:

En el desplegable que aparece pulsamos OK y podemos entonces ver las diferencias entre las versiones:

4.7.

DESHACER LOS CAMBIOS LOCALES

En ocasiones queremos deshacer las modificaciones que hemos realizado en local, y dejar nuestra copia local exactamente igual que la versin que hay en el repositorio. Para hacerlo, pulsaremos con el botn derecho sobre la carpeta o fichero, y seleccionamos Team -> Revert.

20 de 26

Framework Atlas
Gua de Uso de Subversion

En la siguiente pantalla se muestran los archivos que tenemos modificados en local. Para confirmar que deseamos deshacer estos cambios pulsamos sobre OK, y la versin local quedar igual que la del repositorio:

21 de 26

Framework Atlas
Gua de Uso de Subversion 4.8. MARCAR UN DIRECTORIO PARA QUE NUNCA SE SUBA AL REPOSITORIO

En ocasiones tenemos un directorio en local que nunca queremos que sea subido al repositorio de subversion (por ejemplo, el directorio donde est el cdigo compilado de nuestro proyecto). Para marcar este directorio de forma que nunca se suba al repositorio, pulsaremos con el botn derecho sobre la carpeta, y seleccionamos Properties. En el cuadro de dilogo de propiedades de la carpeta, marcaremos la casilla Derived:

De esta forma, Subversion no tendr en cuenta esta carpeta a la hora de subir los cambios al repositorio. Nota Eclipse utiliza la casilla Derived para otras funciones adems de para excluir la carpeta del repositorio de Subversion. Por ejemplo, al realizar una bsqueda de un fichero dentro de un proyecto, no se buscar dentro de las carpetas marcadas como Derived.

22 de 26

Framework Atlas
Gua de Uso de Subversion 5. REALIZACIN DE UNA ENTREGA PARA SU INSTALACIN EN LOS ENTORNOS DE ICM Para poder pasar una versin de nuestro proyecto a cualquiera de los entornos de ICM (validacin, produccin, etc.) es necesario realizar una foto del cdigo en un momento determinado, que ser la que se instale en el entorno deseado. En la nomenclatura de Subversion, una foto congelada del cdigo se denomina TAG. Por tanto, para pasar una versin a cualquier entorno de ICM se ha de crear un TAG, en la carpeta entregas del repositorio del proyecto. Para crear el TAG, pulsaremos con el botn derecho sobre la carpeta o ficheros que queremos actualizar, y seleccionamos Team -> Branch/Tag.

En ese momento aparece un cuadro de dilogo en el que debemos introducir la URL del repositorio en la que queremos crear el TAG. La URL tendr el formato que se indica en el siguiente cuadro:

23 de 26

Framework Atlas
Gua de Uso de Subversion

URL del servidor de Subversion para crear un TAG URL: https://RutaServidorSVN/svn/ProyectoMinusculas/entregas/Fecha_NOMBREMO DULO_Version Valores de las variables: RutaServidorSVN: Ruta del servidor de Subversion (por defecto es https://subversion01:8443 ) ProyectoMinusculas: Nombre del proyecto en minsculas (Ej: bsta). NOMBREMODULO: Nombre del mdulo instalado EN MAYSCULAS. Si se solicitase el paso de varios mdulos o el nombre del mdulo fuese muy largo, puede utilizarse una abreviatura de los mdulos. Fecha: Fecha en la que se crea el TAG, con formato AAAAMMDD Version: Versin de la que se trata (puede haber dos versiones paralelas, una para evolutivo y otra para correctivo). Ej: v0 Ejemplo: https://subversion01:8443/svn/bsta/entregas/PRODUCCION_20110602_PLANTI LLAS_v0 En el cuadro de dilogo, introducimos la URL del TAG y nos aseguramos de que est activada la casilla Create any intermediate folders that are missing:

24 de 26

Framework Atlas
Gua de Uso de Subversion Pulsamos sobre Next, y en la siguiente pantalla dejamos seleccionada la opcin por defecto Head revision in the repository, y volvemos a pulsar sobre Next. Esto indica a Subversion que se cree el TAG con la ltima versin que hay en el repositorio. Nota Como el TAG se crea con la ltima versin del cdigo que hay subido al repositorio, es imprescindible recordar subir las modificaciones que tenemos en local al repositorio antes de crear el TAG.

En la siguiente pantalla debemos introducir un comentario indicando el motivo de la creacin del TAG, y pulsar sobre Finish:

25 de 26

Framework Atlas
Gua de Uso de Subversion

Con esto hemos finalizado la creacin del TAG. Podemos comprobar que el TAG est creado correctamente volviendo a la perspectiva SVN Repositories y navegando por el servidor hasta el TAG recin creado:

26 de 26

You might also like