Guia Uso Subversion-Eclipse
-
Upload
nilton-huaman -
Category
Documents
-
view
297 -
download
1
Transcript of Guia Uso Subversion-Eclipse
MANUAL INTERNO
Guía de Uso de Subversion
Versión 1.2
Área de Integración y Arquitectura de Aplicaciones
Framework Atlas
Guía de Uso de Subversion
2 de 26
Hoja de Control
Título Guía de Uso de Subversion
Documento de Referencia
Responsable Área de Integración y Arquitectura de Aplicaciones
Versión 1.2 Fecha Versión 26/03/2012
Registro de Cambios
Versión Causa del Cambio Responsable del Cambio Fecha del Cambio
1.0 Versión inicial del documento Área de Integración y Arquitectura de
Aplicaciones 02/06/2011
1.1 Añadidas instrucciones para “Revert” y marcar un directorio como “Derived”.
Área de Integración y Arquitectura de
Aplicaciones 03/06/2011
1.2 Modificado el nombre del tag, incluido nombre del módulo que se entrega
Área de Integración y Arquitectura de
Aplicaciones 23/09/2011
Framework Atlas
Guía de Uso de Subversion
3 de 26
Índice
1. INTRODUCCIÓN ................................................................................................................................................................ 4
1.1. AUDIENCIA OBJETIVO .............................................................................................................................................. 4 1.2. CONOCIMIENTOS PREVIOS ...................................................................................................................................... 4
2. ESTRUCTURA DE REPOSITORIOS DE SUBVERSION EN ICM .............................................................................. 5
3. INSTALACIÓN DEL PLUGIN DE SUBVERSION PARA ECLIPSE ........................................................................... 7
4. USO BÁSICO DE SUBVERSION..................................................................................................................................... 10
4.1. AÑADIR UN REPOSITORIO ...................................................................................................................................... 10 4.2. DESCARGAR UN PROYECTO .................................................................................................................................. 12 4.3. VER DIFERENCIAS ENTRE EL PROYECTO LOCAL Y EL REPOSITORIO ......................................................... 14 4.4. ACTUALIZAR LA COPIA LOCAL ............................................................................................................................ 15 4.5. SUBIR LOS CAMBIO LOCALES AL REPOSITORIO .............................................................................................. 17 4.6. VER LOS CAMBIOS QUE SE HAN HECHO SOBRE UN DIRECTORIO O FICHERO ........................................... 19 4.7. DESHACER LOS CAMBIOS LOCALES.................................................................................................................... 20 4.8. MARCAR UN DIRECTORIO PARA QUE NUNCA SE SUBA AL REPOSITORIO ................................................. 22
5. REALIZACIÓN DE UNA ENTREGA PARA SU INSTALACIÓN EN LOS ENTORNOS DE ICM ........................ 23
Framework Atlas
Guía de Uso de Subversion
4 de 26
1. INTRODUCCIÓN
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 instalación 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 instalación 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).
Framework Atlas
Guía de Uso de Subversion
5 de 26
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 también 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 minúsculas (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 sólo las
personas autorizadas puedan ver el código y realizar modificaciones sobre él.
Framework Atlas
Guía de Uso de Subversion
6 de 26
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 módulo en cualquier entorno de ICM, se crea
una “foto” del código en un momento determinado, que será la que se instale en el entorno deseado.
En la nomenclatura de Subversion, una foto congelada del código 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 Producción y
Recepción de Aplicaciones.
vXXXX: Cada versión de desarrollo que se mantenga para el proyecto tendrá una carpeta específica.
Por ejemplo, si se está desarrollando una nueva versión del proyecto y a la vez se está realizando
mantenimiento correctivo sobre el actual, habrá dos carpetas, una para cada versión.
Framework Atlas
Guía de Uso de Subversion
7 de 26
3. INSTALACIÓN 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 máquina 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 cómo 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 instalación 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 continuación.
Dentro de Eclipse vamos a la opción Help->Install New Software, y en la pantalla que aparece pulsamos sobre
“Add…” para agregar una nueva dirección:
Framework Atlas
Guía de Uso de Subversion
8 de 26
Una vez añadido el sitio, seleccionamos los plugins según la siguiente pantalla:
Framework Atlas
Guía de Uso de Subversion
9 de 26
Con esto habremos completado la instalación del plugin. Si se nos solicita que reiniciemos el entorno, aceptaremos
para que Eclipse vuelva a arrancar con el plugin instalado.
Framework Atlas
Guía de Uso de Subversion
10 de 26
4. USO BÁSICO 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 opción Window-
>Show View->Other->SVN y seleccionaremos la opción SVN repositories. Otra opción es pulsar directamente
sobre el icono de la vista de SVN en la parte superior derecha de Eclipse según se muestra en la siguiente figura:
4.1. AÑADIR UN REPOSITORIO
Una vez que estamos en la vista “SVN Repositories”, lo primero que debemos hacer es añadir 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,
según se muestra en la siguiente figura:
Framework Atlas
Guía de Uso de Subversion
11 de 26
Para añadir un nuevo repositorio, pulsamos con el botón derecho sobre el listado de repositorios, y seleccionamos
“New -> Repository Location”:
Framework Atlas
Guía de Uso de Subversion
12 de 26
Introducimos entonces la URL del repositorio de Subversion que deseamos añadir, y pulsamos sobre el botón
“Finish”:
En este momento ya podemos navegar por el repositorio de Subversion recién añadido.
4.2. DESCARGAR UN PROYECTO
Para descargar un proyecto del repositorio de Subversion a nuestra máquina local, debemos situarnos sobre el
Framework Atlas
Guía de Uso de Subversion
13 de 26
directorio raíz del proyecto que deseamos descargar, pulsar con el botón derecho y seleccionar la opción
“Checkout”:
En el cuadro de diálogo que aparece, debemos seleccionar la opción “Checkout as a Project in the Workspace”,
y escribir el nombre que queremos dar al proyecto en nuestra máquina. 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 botón correspondiente del listado de
perspectivas , podemos ver cómo se ha añadido el nuevo proyecto a nuestro Workspace.
Framework Atlas
Guía de Uso de Subversion
14 de 26
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 versión del repositorio, pulsamos con el botón derecho sobre el proyecto y seleccionamos “Team ->
Synchronize with repository”:
Framework Atlas
Guía de Uso de Subversion
15 de 26
Se muestra entonces una ventana con las diferencias entre nuestra copia local y el repositorio remoto. En el
siguiente ejemplo, según la forma de las fechas puede verse cómo se ha modificado en local el fichero “823E4.rtf”,
se han añadido 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
botón derecho sobre la carpeta o ficheros que queremos actualizar, y seleccionamos “Team -> Update to HEAD”.
Framework Atlas
Guía de Uso de Subversion
16 de 26
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
también 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 automáticamente
juntar los dos cambios en el fichero local (operación 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 botón
situado en la parte superior de la consola de Eclipse, y en el desplegable que aparece seleccionamos “SVN
Console”:
Framework Atlas
Guía de Uso de Subversion
17 de 26
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 mostrarán con un asterisco en
la zona inferior derecha del icono, y los añadidos con una interrogación:
Para subir los cambios realizados al repositorio, pulsaremos con el botón derecho sobre la carpeta o ficheros que
queremos actualizar, y seleccionamos “Team -> Commit…”.
Framework Atlas
Guía de Uso de Subversion
18 de 26
En ese momento se mostrará un cuadro de diálogo en el que debemos introducir un texto indicando los cambios
que hemos realizado, y podemos seleccionar cuáles de todos los ficheros modificados deseamos subir:
Introduciremos la descripción del cambio y pulsaremos sobre “OK”.
Framework Atlas
Guía de Uso de Subversion
19 de 26
Nota
Aunque subversion permite subir modificaciones al repositorio dejando el campo
de comentario vacío, esto no se considera una buena práctica.
Siempre que se suba alguna modificación 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 histórico de cambios que se han realizado sobre un directorio o fichero del
repositorio de Subversion. Para hacerlo, pulsaremos con el botón derecho sobre la carpeta o fichero, y
seleccionamos “Team -> Show History”.
Se mostrará entonces en la zona de la consola el histórico de modificaciones:
Framework Atlas
Guía de Uso de Subversion
20 de 26
Si deseamos ver las diferencias entre dos versiones concretas del código, mantenemos la tecla “Control” del
teclado pulsada, y seleccionamos las dos versiones que queremos comparar. Pulsamos entonces con el botón
derecho sobre ellas y seleccionamos la opción “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 versión que hay en el repositorio. Para hacerlo, pulsaremos con el botón derecho sobre la
carpeta o fichero, y seleccionamos “Team -> Revert”.
Framework Atlas
Guía de Uso de Subversion
21 de 26
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 versión local quedará igual que la del repositorio:
Framework Atlas
Guía de Uso de Subversion
22 de 26
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 código compilado de nuestro proyecto). Para marcar este directorio de forma
que nunca se suba al repositorio, pulsaremos con el botón derecho sobre la carpeta, y seleccionamos
“Properties”. En el cuadro de diálogo 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 además de para excluir la
carpeta del repositorio de Subversion. Por ejemplo, al realizar una búsqueda de
un fichero dentro de un proyecto, no se buscará dentro de las carpetas
marcadas como “Derived”.
Framework Atlas
Guía de Uso de Subversion
23 de 26
5. REALIZACIÓN DE UNA ENTREGA PARA SU INSTALACIÓN EN LOS ENTORNOS DE ICM
Para poder pasar una versión de nuestro proyecto a cualquiera de los entornos de ICM (validación, producción,
etc.) es necesario realizar una “foto” del código en un momento determinado, que será la que se instale en el
entorno deseado. En la nomenclatura de Subversion, una foto congelada del código se denomina TAG. Por tanto,
para pasar una versión 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 botón derecho sobre la carpeta o ficheros que queremos actualizar, y
seleccionamos “Team -> Branch/Tag…”.
En ese momento aparece un cuadro de diálogo 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:
Framework Atlas
Guía de Uso de Subversion
24 de 26
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 minúsculas (Ej:
bsta).
NOMBREMODULO: Nombre del módulo instalado EN MAYÚSCULAS. Si
se solicitase el paso de varios módulos o el nombre del
módulo fuese muy largo, puede utilizarse una abreviatura de
los módulos.
Fecha: Fecha en la que se crea el TAG, con formato AAAAMMDD
Version: Versión 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 diálogo, introducimos la URL del TAG y nos aseguramos de que está activada la casilla “Create
any intermediate folders that are missing”:
Framework Atlas
Guía de Uso de Subversion
25 de 26
Pulsamos sobre “Next”, y en la siguiente pantalla dejamos seleccionada la opción 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 versión
que hay en el repositorio.
Nota
Como el TAG se crea con la última versión del código 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 creación del TAG, y pulsar
sobre “Finish”:
Framework Atlas
Guía de Uso de Subversion
26 de 26
Con esto hemos finalizado la creación del TAG. Podemos comprobar que el TAG está creado correctamente
volviendo a la perspectiva “SVN Repositories” y navegando por el servidor hasta el TAG recién creado: