Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Facultad de Ingeniería
Escuela de Ciencias y Sistemas
Análisis y Diseño 2
Ing. Ricardo Morales
Aux. Pedro Santos
Practica 1
2
Instalación de en Windows Siete
Antes que nada definamos ¿Que es maven?, pues maven es un herramienta que ayuda en la
gestión de ciertas etapas del ciclo de vida del software, algunas de las tareas que se pueden
realizar con esta herramienta están, la creación y administración de directorios, la compilación
de los componente, permite correr pruebas unitarias y esta herramienta esta lista para su
utilización de equipos de trabajos en red.
1. Asegurarse de tener instalado JAVA y configurada sus variables de entorno. Para esta
instalación las variables de entorno a utilizar serán.
CLASSPATH: .
Path C:\Program Files\Java\jdk1.6.0_14\bin
3
5. Verificar la correcta instalación de maven
a. Abrir una consola cmd y ejecutar el comando
mvn –version
b. Si la instalación ha sido satisfactoria se mostrara un mensaje similar al
siguiente.
5.1 Caso contario podría aparecer el primer error documentado en esta guía.
Solución:
Crear una variable de entorno con el nombre JAVA_HOME que direccione al directorio
donde está instalado JAVA, para este caso será
Nota: tomar en cuenta que aquí no utilizamos la referencia del directorio bin.
4
Instalación de maven en Linux (Ubuntu 9.04)
$ gedit.profile
$soruce .profile
5
$tar -xzvf apache-maven-<numero de versión>-bin.tar.gz
$ gedit .profile
En mi caso seria
$ source. Profile
$ mvn –version
$ echo $M2_HOME
6
La salida será similar a la siguiente
7
Instalación de Apache en Linux (Ubuntu 9.04)
Al igual que la instalación de subversión esta tarea se reduce a instalar los paquetes necesarios
8
Configurar apache con soporte webdav y enlazarlo con el sistema
subversión
1. Bueno hasta ahora solamente hemos instalado los paquetes de Apache, Maven y
subversión de manera individual, ahora necesitamos enlazarlos, para lo cual
necesitaremos instalar la siguiente lista de paquetes.
subversion-tools
libapache2-svn
3. Ahora vamos a configurar lo que nos faltaba el acceso web median webdav.
3.1 En una terminal crearemos un grupo en el sistema operativo el cual será destinado
para subversión con:
9
3.2 Al grupo creado anteriormente le agregaremos el usuario de apache “www-data”
3.3 Para que subversión pueda acceder al repositorio con el uso de apache necesitara
la carga de los siguiente modulos, en una termina ejecutamos:
3.4 Crearemos un usario con password para poder acceder al servidor apache con el
10
3.5 Crearemos un directorio que funcionara como nuestro repositorio.
3.7 Ubuntu maneja mucho lo que son los permisos de acceso a archivos por lo cual
hay que asignarle los siguiente a nuestros repositorios.
11
3.9 Aun quedan tareas por realizar, asi que lo siguiente será copiar los archivos
svnindex.css y svindex.xsl en la carpeta /var/www que es donde se encuentra
apache
http://localhost/svn/practica
12
13
Crearemos un repositorio con la estructura básica en la carpeta
de nuestro proyecto
1. Vamos a crear el típico ejemplo de java maven, para lo cual abriremos la consola de
comando y ejecutaremos lo siguiente.
Descripción:
14
Este comando descargara varios archivos de internet necesarios de maven.
holamundo
+---src
| +---main
| | +---java
| | +---analisis
| | +---ejemplos
| | +---App.java
| +---test
| +---java
| +---analisis
| +---ejemplos
| +---AppTest.java
+---pom.xml
15
2. Nos dirigimos a la carpeta de holamundo donde están el archivo pom.xml y
procedemos a ejecutar el siguiente comando.
Mvn compile
Se descargaran otros paquetes ya que es la primera vez que utilizamos este comando y
16
Crear un proyecto de java maven en Ubuntu 9.04
2. Nos dirigimos a la carpeta del proyecto que ha sido creada en el OldArchetype, para
este ejemplo estará en /home/joshi/holamundo
$ cd /home/joshi/holamundo
$ mvn compile
Con el comando compile se crearan carpetas destinas a los archivos que compondrán
el build de nuestra aplicación, además por ser la primer a vez que se ejecuta este
comando se descargaran paquetes necesarios para la compilación.
17
3. Para generar el archivo .jar de nuestra aplicación se utiliza el siguiente comando
$ mvn package
18
Versionar proyectos a el trunk del repositorio
$ cd home/joshi/holamundo
$ svn import . http:/localhost/svn/practica/trunk –m importación
inicial
Al conectarnos con el servidor svn podemos ver que los archivos se han copiado a la carpeta
trunk
19
Crear un tag del proyecto y versionarlo en la versión respectiva
de tags
20
Instalar la herramienta tortoise svn en Windows 7
2. Instalamos el paquete
21
2.4 Seleccionamos Install
22
2.5 La instalación ha sido satisfactoria no sin antes realizar un restart del sistema para
que los cambios tomen efecto.
23
Checkout al repositorio de subversión
24
Si recordamos el repositorio esta en http://localhost/svn/practica en Linux el cual
cambiaremos por la dirección IP de la maquina que es 192.168.1.4
Chekout directory: es la carpeta en nuestra maquina local donde realizaremos el
checkout.
Checkout Depth: Fully recursive, es decir copiara todos los elementos de la carpeta.
5. Seleccionamos aceptar
Nos pedirá los datos de autenticación del servidor SVN
Username y Password, los ingresamos y aceptamos.
25
6. Los datos serán descargados y se mostrara el progreso en la siguiente ventana
26
Netbeans y Subversión
27
5. Elegimos el folder donde se almacenara de manera local, aceptamos y creamos un
proyecto de java application.
28
6. Seleccionamos el proyecto, click izquierdo Versioning > Import into subversion
Repository.
29
8. Aceptamos los cambios y los archivos se copiaran a nuestro repositorio local.
9. Ahora ya podemos realizar tareas como update, commit, merge, etc, haciendo click
izquierdo sobre nuestro proyecto subversión.
30
Instalar una herramienta gráfica en el servidor de subversión
(rapid svn)
Rapid svn es la interfaz grafica oficial de svn, la cual nos permite ejecutar todas las tareas que
svn ejecuta en una terminal de comando haciendo más simple y eficiente las transacciones con
svn.
31
2. Ahora Vamos a realizar una operación de checkout para comprobar su funcionamiento
2.1 vamos a Repository > checkout y agregamos los datos de URL: como estamos en Linux
ahora usamos la dirección de localhost o bien su dirección IP que es lo mismo,
haremos un checkout al Escritorio.
2.2 Aceptamos
32
2.3 ahora vemos que como se realiza el proceso de check out en lel output de RapidSVN
33
Comando elementales de Subversión
SVN
Svn es el programa cliente que ejecutamos en una terminal, el cual nos permite agregar,
importar y actualizar archivos del repositorio.
chekout: comando que hace una copia del contenido del repositorio hacia el sistema local
donde se está trabajado.
Sintaxis:
Ejemplo:
commit: crea una nueva revision con la copia de nuestro trabajo en el repositorio central, con
Sintaxis:
Ejemplo:
update: comando que actualiza los cambios de la ultima revision en el repositorio a nuestra
copia local.
Sintaxis:
34
Ejemplo:
svan update:
import: comando que se utiliza para añadir archivos al repositorio el cual realiza un commit
de todo los archivos que se encuentran en path hacia URL. Este comando se utiliza para
realizar la primera revisión en el servidor.
Sintaxis:
Ejemplo:
Sintaxis:
Ejemplo:
add: nos permite agregar archivos o directorios al repositorio central, pero es necesario de
realizar un commit para confirmar la operación.
Sintaxis:
Ejemplo:
delete: nos permite eliminar archivos del repositorio, al igual que add necestia de un commit
para confirmar la petición.
35
Sintaxis:
Ejemplo:
svn diff: nos muestra la diferencias existentes entre dos o mas versiones.
Sintaxis:
svn diff
svn diff –revision <numero de revisión o fecha de revision>
Ejemplo:
revert: es utilizado para revertir los cambios anteriormente ejecutados, para que funcione de
manera recursiva se utiliza el complemento -R
Ejemplo:
svn revert
svnadmin
create: este comando nos permite crear directorios en una ruta especifica.
Sintaxis:
36
Ejemplo:
Sintaxis:
Ejemplo:
Sintaxis:
Ejemplo
37
CVS vrs Subversion
Aunque subversión esta Subversion nace para mejorar las carencias de CVS vamos hacer una
revisión de que características que Subversion ha mejorado.
38
Funcionalidades adicionales
Servidor y cliente intercambian diferencias entre versiones. Al enviar una nueva versión
nunca
es necesario transmitir ficheros enteros.
Interoperabilidad con WebDAV. Es posible acceder al repositorio con cualquier software
que soporte dicho protocolo
Apache + SSL puede usarse con firewalls y proxys.
MIME types y detección automática de ficheros binarios.
Permite operar directamente sobre el repositorio, sin copia local.
Permite backups en caliente.
Conclusión
Recomendaciones
Es importante conocer las diferencias entre los manejadores de versiones así podemos elegir
el adecuado para nuestra planificación de administración la configuración, además aunque no
he participado en proyectos de desarrollo utilizando este tipo de controladores de versiones,
siento que es importante no dejarle toda la tarea al controlador ya sea SVN CVS Mercurial, ya
que si existe algún fallo cual remota sea la probabilidad sería mejor manejar varios respaldos y
tener políticas para hacer los mismos para no lamentar perdidas innecesarias.
39
Disco Duro local
40
<?xml version="1.0" encoding="UTF-8" ?>
- <!--
41
Bibliografía
http://tortoisesvn.tigris.org/
http://rapidsvn.trigris.org/
http://rapidsvn.tigris.org/
42