Logo Studenta

Guia Práctica - Subversion

¡Este material tiene más páginas!

Vista previa del material en texto

UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 1 
 
Requisitos de Software: Instalar los siguientes programas en el orden que se sugiere. 
1) Instalar VisualSVN, que incluye apacheSvn. (url: https://www.visualsvn.com/downloads/). Un de las 
pantallas de configuración es la siguiente, setear como lo indica la figura. 
 
Luego en la pantalla siguiente elegimos Standar Edition. En la siguiente figura se muestra como setear 
la ubicación la carpeta donde se crearán los repositorios. 
 
https://www.visualsvn.com/downloads/
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 2 
 
Una vez terminada con la instalación, lanzamos la ejecución del VisualSVN y crearemos el usuario 
admin con clave admin. Para poder acceder a los repositorios desde otros programas. 
 
Hacemos click (boton derecho) en “Reposotories” y elegimos Create Repository; seteamos opciones 
como lo muestra la siguiente lista en cada ventana de la aplicación. Saltar entre cada ventana con el 
boton siguiente. 
- Elegir “Regular FSFS Repository” como tipo de repositorio. 
- Elegir un nombre para el repositorio, ponerle “repProyectos”. 
- Elegir “repositorio vacio”, como tipo de repositorio. 
- Elegir “All subversion user have read/write access”. Para que en principio todos los usuarios 
tengan permisos de acceso a todos los repositorios. 
- Finalmente hacemos click en Create, para que nos muestre un resumen de la operación. 
 
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 3 
 
Aquí lo más importante es la URL del repositorio ”https://pccande/svn/repProyectos/” 
2) Instalar Tortoise Subversion. (url: http://tortoisesvn.net/downloads.html). 
Si bien TortoiseSVN lo usaremos estrictamente como CLIENTE SVN, esta herramienta también puede crear 
Repositorios LOCALES, los cuales serán accedidos solo desde la maquina que los creó. En nuestro caso 
usaremos repositorios creados con VisualSVN. 
En consecuencia lo mostrado en la siguiente nota NO debe aplicar el práctico, pero igual se muestra en la 
misma cómo crear un repositorio con TortoiseSVN. 
Nota: Como crear un repositorio SVN con Tortoise. 
Desde el navegador creamos una carpeta “repositorioLocal” luego elegimos la opción “Crear repositorio 
aquí”, en el cual podremos dejar en este repositorio nuestros proyectos para el control de versiones. 
 
Hacemos click en Create Folder Structure para que se cree la estructura necesaria para convertir la 
carpeta en un repositorio SVN. Luego con Start Repobrowser podremos navegar el repositorio y sus 
proyectos que aloja. 
 
http://tortoisesvn.net/downloads.html
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 4 
 
 
Lo que tenemos que tener en cuenta es la URL, el protocolo file:/// es utilizado para acceso local. 
 
3) Conectar JDeveloper con el repositorio. 
Para esto se importara (alojará) la aplicación al repositorio, hacemos click en la opción “Version 
Application”. Aquí tenemos las opciones tecnológicas para versionado que son GIT o SUBVERSION, 
elegimos subversión. Nos pedirá las credenciales de conexión con el repositorio (usar admin/admin 
creadas anteriormente). 
 
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 5 
 
 
Hacemos click en “Test Read Access” nos pedirá aceptar el certificado de seguridad, lo aceptamos. Si la 
prueba de conexión dio “Access granted” hacemos click en OK para iniciar el asistente que nos guiará 
paso a paso. 
Paso1 - Wellcome: Bienvenida 
Paso2 - Destination: Se establece la ubicación de la aplicación dentro del repositorio (dejar “root”). 
Paso3 – Source: fuente, se especifica el directorio fuente desde el cual se controlara las versiones. 
Para nuestro caso se sugiere el siguiente directorio, en este paso aceptamos los valores sugeridos. 
 
Paso 4: Filter. Podremos elegir que archivos o tipos de archivos queremos que se excluyan de la 
importación al repositorio. Para este caso aceptamos la configuración sugerida. 
Paso 5: Options. Elegir Perform Checkout. 
Paso 6: Sumary. Se muestra un resumen de la importación a Subversion antes de concretarla. En 
caso de aceptar hacer click en finish. 
Nota: en el caso que no pueda realizarse la conexión mediante el protocolo seguro https podemos 
desactivar esta opción (“Use security conection”)en la configuración del servidor VisualSVN como muestra 
la pantalla siguiente. 
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 6 
 
 
Una vez establecida la conexión, el resultado será que la aplicación se convierte en la versión 1 alojada en 
el repositorio, esto se aprecia el el navegador de la aplicación. 
 
 
4) Realizar cambios en la aplicación. 
a) Modificar la Clase Secretario del diagrama de clase agregando el atributo antiguedadReconocida(int) y 
el método calcularAntiguedad (Aplicar los cambios haciendo click en Guardar). Estos cambios impactan 
en el navegador de la aplicación mostrando un icono diferente, indicando que el elemento fue 
modificado. 
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 7 
 
 
b) Luego abrimos otra instancia (INSTANCIA 2) de JDeveloper, una vez abierto el programa cerramos las 
aplicaciones que se abrieron con el mismo. (Application -> Close) 
 
Nota: Podemos establecer una nueva conexión a subversión usando (View->Team->Versioning 
Navigator) en este caso cambiaremos los parámetros de conexión haciendo que esta conexión se realice 
con el usuario user1. 
Para nuestro ejemplo NO APLICAMOS una nueva conexión sino que utilizamos la que ya fue creada y está 
configurada en la IDE JDeveloper. 
PERO en caso de que no estuviéramos simulando el trabajo en equipo, sino que efectivamente desde otra 
máquina en nuestra red accediera el user1 utilizando su propio software JDeveloper, deberíamos aplicar 
una nueva conexión. 
 
 
 
 
 
 
 
 
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 8 
 
Hacemos uso de la opción “CHECKOUT”, del menú Versioning. Con esto obtendremos una copia local de 
la versión alojada en el repositorio en esta nueva instancia2 de jDeveloper. 
 
Nos mostrará las conexiones guardadas en la aplicación, en este caso 
 
Damos click en OK Y YES respectivamente, con esto obtendremos una copia de la aplicación alojada en el 
repositorio central repProyectos. De aquí en más con esta nueva copia puedo SIMULAR que esta 
INSTANCIA2 de JDeveloper está siendo usada por otro usuario. 
 
c) Desde la INSTANCIA1 de JDeveloperhacer un commit del diagrama de clase para que el cambio quede 
registrado en el repositorio central. El resultado es que este diagrama ahora está en la versión 2, a la vez 
también su icono cambia nuevamente para indicar que el elemento en el versionado 2 no está 
modificado. 
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 9 
 
 
Hacer commit para Secretario.uml_cla que también contiene el cambio hecho en la clase Secretario, 
producto de haber cambiado la clase en el diagrama de clase Alumno. 
Desde la INSTANCIA2 de JDeveloper habilitamos la ventana de cambios pendientes de subversión ( View-
>Team->Pending Changes Subversion) veremos que nos avisa de que la copia local difiere de la alojada 
en el repositorio, recordemos que contiene la revisión 3 del diagrama de clase Alumnos (archivo Class 
Diagram Alumno.class_diagram). En caso de que la IDE no nos notifica automáticamente utilizar la 
opción actualizar de la ventana Pending Changes. 
 
Una vez identificada las diferencias hacemos uso de Update Working Copy para actualizar nuestra copia 
local con las revisiónes del repositorio central para los archivos “Class Diagram Alumnos.class_diagram” y 
“Secretario.uml_cla”. 
Veremos ahora que los cambios hechos en el diagrama de clase se 
pueden ver ahora desde la INSTANCIA2 de JDeveloper (aquí puede ser 
necesario refrescar la vista en el navegador del proyecto). 
 
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 10 
 
5) Trabajo con bloqueo y desbloqueo de recursos: 
a) En la INSTANCIA1 de JDeveloper bloqueamos el archivo “Alumno.java” utilizando el menú contextual. 
 
b) Desde la INSTANCIA2 de JDeveloper hacer cambios al archivo “Alumno.java” agregando un comentario 
a elección a la clase Alumno, guardar los cambios en el archivo. 
Al hacer un commit del archivo “Alumno.java” (INSTANCIA2) se observa que JDeveloper nos muestra un 
mensaje de error, indicando que el archivo del repositorio está bloqueado. 
 
c) Intentar hacer algún cambio en el mismo archivo (“Alumno.java”) en la INSTANCIA1 y hacer commit. 
Como resultado de esto veremos que el cambio se guarda en el repositorio central ya que esta 
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 11 
 
INSTANCIA1 tenía bloqueado el archivo, luego de hacer el commit se observa que se libera (unlook) el 
recurso. 
 
 
6) Hacer consultas sobre el registro que lleva subversión de los cambios a los elementos controlados 
mediante sus revisiones. 
Desde la INSTANCIA1 de JDeveloper, utilizamos la opción “Version History” para ver los cambios 
realizados sobre un objeto desde su creación en el repositorio hasta el último cambio, la figura siguiente 
muestra como acceder a esta opción, haciendo click derecho sobre el archivo “Secretario.uml_cla”. 
 
Se nos mostraran dos paneles en los cuales podremos elegir, en ambas partes, diferentes revisiones para 
ver las diferencias entre una y otra. 
 
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 12 
 
 
7) Para este punto puede ser necesario realizar lo que se sugiere en la nota siguiente, el objetivo es que el 
cliente TortoiseSubversion obtenga una copia local del repositorio repProyectos pero utilizando el usuario 
user1 con su clave user1, creada en VisualSVN en un punto anterior. 
Nota: Para que tortoiseSVN se conecte a un repositorio pidiendo credenciales puede ser necesario limpiar 
el cache de datos de autenticacion para lo cual hacemos click derecho en cualquier lugar/ubicación del 
explorador de Windows y utilizar la opción Setting de TortoiseSVN. Se abrirá una ventana con varias 
pestañas. En Saved Data limpiar (Clear) los datos de autenticación, de esta manera TortoiseSVN la 
próxima vez que se conecte con un repositorio nos pedirá nuevamente datos de autenticación. 
 
 
Hacer una Checkout en la carpeta “e:\DocumentUser1\CopiaLocalRepProyecto” (en caso de ser necesario 
reubicar en alguna unidad de disco diferente dependiendo de la configuración de su PC. 
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 13 
 
 
En la ventana de confirmación dar OK, aquí nos pedirá un usuario / clave, ingresar user1 / user1. 
 
Crear un archivo leame.txt con el contenido sugerido en la pantalla siguiente. 
 
UNIVERSIDAD NACIONAL DE JUJUY 
FACULTAD DE INGENIERIA 
 
 
 
TRABAJO PRACTICO Nº 7 
VERSIONADO 
 
 
 
APU 2008 
HERRAMIENTAS 
INFORMATICAS AVANZADAS 
 
Profesor Adjunto: Ing. Alfredo R. Espinoza 
Ayudante de 1º: Lic. Claudia Panica 
Página 14 
 
 
Agregar el elemento creado al repositorio central “repProyectos”, para esto utilizar: 
1) la opción ADD del cliente TortoiseSubversión. 
2) Luego COMMINT. 
 
 
8) Hacer un dump del repositorio “repProyectos” mandar la salida al archivo 
“e:\dumpRepProyectosApellidoNombre”. Utilizar la línea de comandos para este propósito. 
 
1 
2

Continuar navegando