Tsr Se01v2 Cas Git
Tecnologías de los Sistemas de Información en la Red
Índice
1.
2.
3.
4.
5.
6.
7.
8.
TSR
Introducción al control de versiones
Control de versiones distribuido
Git
Uso básico
Flujos de trabajo
Resultados de aprendizaje
Bibliografía
Ejemplo ramificación y fusión
Seminario 1 - Git
2
Objetivos
Conceptuales
Entender el funcionamiento de un sistema distribuidoconcreto.
Presentar los conceptos asociados al desarrollo y versionado
asistido de software, especialmente en su vertiente
colaborativa.
Conocer la utilidad y aplicabilidad de este tipo de software.
Instrumentales
TSR
Toma de contacto con una herramienta necesaria en las
actividades de laboratorio de la asignatura.
Capacitar para el uso general de este tipo de aplicaciones que
asisten aldesarrollo de software.
Seminario 1 - Git
3
Índice
1.
2.
3.
4.
5.
6.
7.
8.
TSR
Introducción al control de versiones
Control de versiones distribuido
Git
Uso básico
Flujos de trabajo
Resultados de aprendizaje
Bibliografía
Ejemplo ramificación y fusión
Seminario 1 - Git
4
1. Introducción al control de versiones
Algunas actividades que se desarrollan a lo largo del tiempo
presentanestados intermedios en los que pueden
interrumpirse para luego reanudarse
La creación de materiales, como documentos o programas,
también provoca la aparición de puntos intermedios (p.ej. cada
vez que se termina un capítulo de un libro)
En lugar de mantener una única copia de ese material, por seguridad
hacemos copias (instantáneas) al alcanzar los puntos intermedios
A cada instantánea ledenominamos versión
Las distinguimos, informalmente, con una variación en el nombre del
archivo: ejemplo, ejemploBis, ejemploBis2, ejemploBis3
Si hay más de un participante en la actividad, el número de
estados intermedios y la necesidad de preservarlos aumenta
TSR
Seminario 1 - Git
5
1. Introducción al control de versiones
El problema
Caso de 1 usuario: editar un documento a lolargo del tiempo ->
diferentes versiones
¿Cómo volver a versiones anteriores?
¿Cómo automatizar la generación de versiones?
Caso de múltiples usuarios: añadir al anterior el problema de las
actualizaciones perdidas
X1 = X copia el objeto
X2 = X edita su copia
X3 = X devuelve su copia
A1-B1-A2-B2-A3-B3 produce
un resultado diferente de
A1-B1-A2-B2-B3-A3
TSR
Seminario 1 - Git
6
1.Introducción al control de versiones
Un SCV es un conjunto de herramientas que facilitan la gestión de los cambios
que se realizan sobre los elementos o sobre la configuración de algún producto.
(reelaborado desde la Wikipedia http://es.wikipedia.org/wiki/Sistema_de_control_de_versiones)
Conceptos esenciales de un SCV
TSR
1.
Depósitos (repositories): Almacenes del trabajo con registro de todoslos
cambios puntuales realizados a lo largo del tiempo
2.
Rama: Línea de cambios sucesivos dentro de un depósito
3.
Copia de Trabajo: Directorio sobre el que se realizan los cambios, referido a
algún depósito
4.
Tag: Conjunto de versiones de todos los ficheros de un depósito en una rama
5.
Head: Tag especial que referencia al conjunto de las últimas versiones de los
documentos en undepósito
6.
Trunk/main: Rama que representa la línea principal de trabajo del proyecto
actual
Seminario 1 - Git
7
1. Introducción al control de versiones
Operaciones básicas
Op
Descripción
Add
Añade un nuevo fichero al depósito, iniciando el SCV su supervisión
Edit
Modifica un documento ya existente
Commit
Guarda los cambios introducidos en la copia de trabajo a un depósito,
lo que creanuevas versiones de los documentos modificados
Update
Refresca los archivos de la copia de trabajo con la última información
procedente del depósito
Revert
Descarta los cambios de la copia de trabajo, y realiza un update
Delete
Marca un documento para su borrado cuando se realice el commit
TSR
Seminario 1 - Git
8
1. Introducción al control de versiones
Operaciones adicionales
Op...
Regístrate para leer el documento completo.