La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Concurrent Versions System Daniel Vergara C. Rodrigo Yañez Q.

Presentaciones similares


Presentación del tema: "Concurrent Versions System Daniel Vergara C. Rodrigo Yañez Q."— Transcripción de la presentación:

1 Concurrent Versions System Daniel Vergara C. Rodrigo Yañez Q.

2 INTRODUCCIÓN  ¿De dónde surge?  La solución: Sistemas de Control de Versiones  Ventajas: - Administrar versiones de archivos - Evitar redundancia - Centralizar la información - Permitir la libre modificación sin destruir trabajo anterior.

3 CVS: Concurrent Versions System  Disponible para múltiples plataformas  Funcionamiento simple  Trabaja en forma local o remota

4 Conceptos básicos

5 Revisión

6 Creación de un repositorio  Definir variable de entorno CVSROOT $export CVSROOT=/home/alm99/login/repositorio  Inicializar el repositorio $cvs init

7 Acceder a un repositorio  En un sistema local: $cvs –d home/alm99/login/repositorio comando o $cvs comando  Forma remota (SSH): $CVSROOT=:ext:usuario@aragorn.elo.utfsm.cl:/home/a lm99/login/repositorio $export CVSROOT CVS_RSH=ssh

8 Comenzar un proyecto nuevo  Introducir un proyecto nuevo al repositorio CVS se denomina importar.  Se utiliza cvs import  Ejemplo: $cd proyecto $cvs import –m “importación tarea1” proyecto login start

9 Obtener una copia de trabajo  El comando para obtener un proyecto es checkout.  Ejemplo: $cd micopia $cvs checkout proyecto

10 Obtener una copia de trabajo  Estructura del Contenido de la copia /proyecto |---/CVS | |---/Módulo_1 ||-------/Submódulo_1 del Módulo_1 ||-------/CVS | |---/Módulo_2 ||-------/Submódulo_1 del Módulo_1 ||-------/CVS

11 Obtener una copia de trabajo  Archivos del Directorio CVS |---/CVS |-------Root |-------Repository |-------Entries -Root: contiene la ruta al repositorio -Repository: contiene la ruta de un proyecto dentro del repositorio. -Entries : contiene información sobre cada uno de los ficheros que forman parte del proyecto

12 Actualización de nuestra copia local  Para actualizar nuestra copia local respecto a los cambios del repositorio central se utiliza el comando update  Ejemplo: $cvs update o también: $cvs update nombre_archivo

13 Comparando ficheros con el repositorio  El comando diff muestra cualquier diferencia entre los ficheros de la copia local y sus homónimos en el repositorio  Ejemplo: $cvs diff

14 Enviar cambios al Repositorio  El comando commit envía al repositorio las modificaciones que hemos estado realizando en nuestra copia local.  Ejemplo: $cvs commit -m "mensaje del cambio“ archivo

15 Enviar cambios al Repositorio  IMPORTANTE - Al enviar el fichero, el proyecto original no se ve afectado. - Se agrega una nueva revisión. - Cuando un cliente solicita una copia del proyecto obtiene la última revisión de cada fichero contenido en el repositorio.

16 Averiguar quien hizo que  Suponiendo que el proyecto a pasado por varios cambios y queremos saber que archivos han sido modificados, no es necesario examinar con detalle cada fichero de diferencias.  Esto se realiza con el comando log: $cvs log

17 Examinar y deshacer cambios  Supuesto: el usuario “davec”, se percata que “royaq” hizo el cambio mas reciente a “tarea1”  Pregunta: ¿Cuál es la diferencia entre mi revisión (1.2) de “tarea1”y la revisión de “royaq” que vino a continuación (1.3)?  Respuesta: $cvs diff –c –r 1.2 –r 1.3 archivo

18 Añadir archivos y directorios al repositorio  Archivo: Se utiliza el comando add y luego se debe enviar al repositorio (commit).  Ejemplo: $ cvs add newfile.c $ cvs commit -m “nuevo fichero” newfile.c

19 Añadir archivos y directorios al repositorio  Directorio: También se utiliza el comando add, pero no se debe enviar al repositorio.  Ejemplo: $ mkdir new-subdir $cvs add new-subdir

20 Eliminando Ficheros  Eliminar un fichero es similar a añadir uno, con la salvedad de que se debe hacer un paso adicional: eliminar primero el fichero de la copia de trabajo.  Ejemplo: $rm newfile.c $ cvs remove newfile.cl $ cvs commit –m “eliminando archivo” newfile.c

21 CVS y los ficheros eliminados  Cvs no borra ningún fichero del repositorio.  Lo mueve a un directorio llamado Attic  Lo marca como “muerto” estando disponible en caso de desear “revivirlo”

22 Formas Abreviadas de CVS  Los comandos CVS tienen una forma abreviada  Los mas usados son: checkout=co update=up commit=ci  Se puede obtener una lista de todas las formas abreviadas ejecutando el comando: $ cvs –help-synonyms.

23 Veamos un Ejemplo...

24 Referencias  http://www.cvshome.org  http://www.wincvs.org  http://www.red-bean.com/cvsbook/

25 FIN ¿Preguntas?


Descargar ppt "Concurrent Versions System Daniel Vergara C. Rodrigo Yañez Q."

Presentaciones similares


Anuncios Google