13
Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

Embed Size (px)

Citation preview

Page 1: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

Control de versiones con Subversion v1.1

© 2012.SOPORTE. DIS.

Ronald De La Cruz CuevaEquipo de SoporteUSMP

Page 2: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

¿Qué es control de versiones?

• Es la capacidad de recordar todos los cambios que se hacen tanto en la estructura de directorios como en el contenido de los ficheros.

• Cuando más de una persona trabaja con los mismos archivos, aún cuando sea una sola persona, resulta necesario mantener cierto control sobre los cambios que se realizan: – ¿Quién lo hizo?– ¿Cuándo lo hizo?– ¿Qué hizo?

Page 3: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

¿Qué es control de versiones?

• Si los cambios realizados por dos personas son incompatibles, es necesario tomar una decisión sobre la forma definitiva del archivo.

• Nos damos cuenta que los últimos cambios realizados no siguen el camino apropiado y debemos volver atrás.

Page 4: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

¿Qué es Subversion?

• Es una herramienta de código abierto, multiplataforma para el control de versiones de ficheros electrónicos, como son el software o la documentación.

• Se basa en un repositorio central que actúa como un servidor de ficheros, con la capacidad de recordar todos los cambios que se hacen tanto en sus directorios como en sus ficheros.

Page 5: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

• El repositorio incrementa un número global de revisión con cada conjunto de cambios enviados (COMMIT) al mismo. Es posible copiar y renombrar ficheros; crear una rama del proyecto es tan fácil como copiar un directorio.

¿Qué es Subversion?

Page 6: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

• TortoiseSVN es un cliente gratuito de código abierto para el sistema de control de versiones Subversion.

• Provee integración con el explorador de Microsoft Windows. Es la interfaz más popular en este sistema operativo.

¿Qué es TortoiseSVN?

Page 7: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

• Un Cliente, como puede ser TortoiseSVN u otro según sistema operativo y funcionalidad.

• Un repositorio, o un servicio que proporcione almacenamiento usando Subversion gratuito para proyectos de software libre como Google Code.

¿Qué se necesita para empezar?

Page 8: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

El Repositorio

• Vamos a tomar el ejemplo del Repositorio de Google Code para poder explicar como funciona y sus partes.

Page 9: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

• Este es el repositorio en Google Code, formado por branches(ramas), tags(etiquetas), trunk (tronco) y wiki(ayuda hecha por el equipo).

El Repositorio

Page 10: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

• Versiones de desarrollo paralelas al trunk.• Una rama de desarrollo SVN, también es una

copia de un directorio, pero con la intención de modificarla, para conseguir un producto final diferente y alternativo al original.

• Muy útiles para personalizar una aplicación para diferentes clientes. Ejemplo: Branches/cliente1/bin

Branches (Ramas)

Page 11: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

• Son las versiones congeladas.• Una etiqueta para SVN es una copia de un directorio, se

hace con el objetivo de obtener una "foto" del mismo, y sin la intención de modificarla.

• Es útil para crear versiones. Ejemplo: tags/versiones/v1.0.

Tags (Etiquetas)

Page 12: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

• Es la línea principal de desarrollo en un repositorio SVN.

• Es la base de código principal, en este se encuentra el desarrollo principal el cual el equipo trabaja.

Trunk (Tronco)

Page 13: Control de versiones con Subversion v1.1 © 2012.SOPORTE. DIS. Ronald De La Cruz Cueva Equipo de Soporte USMP

• Es un sistema de creación, intercambio y revisión de información en la web, de forma fácil y automática.

• En el Google Code actúa como ayuda para un mejor entendimiento de lo que se hace, como por ejemplo un índice o un glosario de términos.

Wiki (Ayuda de usuarios)