Descripción del curso
GIT es un sistema de control de versiones, creado originalmente por Linus Torvalds, creador de Linux, y utilizado por millones de desarrolladores a lo largo del mundo. GitLab es un sistema que partiendo de la idea de tener repositorios GIT se ha convertido en un sistema completo para realizar integración continua y llevar nuestro desarrollo a buen término.
En este curso se pretende explicar cómo funciona un sistema de control de versiones, y utilizarlo en nuestro día a día como desarrolladores e incluso como administradores de sistemas. Veremos cómo instalar GitLab, y utilizarlo para mejorar nuestro desarrollo llevándolo a la integración continua.
Objetivos
El objetivo del curso es conocer y entender cómo funciona un sistema de control de versiones. Tras esto ver cómo sacar el máximo rendimiento a la herramienta y llevarlo a nuestro día a día en el mundo del desarrollo.
El curso se divide en 3 secciones diferenciadas:
- Introducción a los sistemas de control de versiones: entender qué son, fundamentos básicos generales a todos ellos, casos de uso aparte de la programación.
- GIT: comandos básicos de uso cotidiano en GIT, situaciones diarias y cómo mejorar nuestro flujo de desarrollo con ellas.
- GITLab: utilización básica y administración para mejorar nuestro grupo de desarrollo.
Requisitos
Es necesario tener cierta experiencia en programación para poder entender las situaciones que se van a explicar en el curso.
Orientado a
El curso está orientado a equipos de desarrollo principalmente, pero también a administradores de sistema que quieran controlar sus entornos mediante sistemas de control de versiones e introducirse en el mundo devops.
Programa
- Introducción a un control de versiones
- ¿Qué es un sistema de control de versiones?
- ¿Cuando lo podemos utilizar?
- Conceptos básicos
- Introducción a GIT
- Arquitectura de GIT
- Componentes de GIT
- Conceptos básicos
- Repositorio
- Commits
- Copiar-modificar-mezclar
- Diferencia entre repositorio local y remoto
- Acceso a repositorios locales y remotos
- Conflictos
- Resolver conflictos / Fusionar conflictos
- Elegir uno de los archivos de cambio
- Rechazar cambios
- Ejercicios
- Ramas
- ¿Cuando son necesarias?
- Crear ramas
- Diferencia entre ramas locales y remotas
- Mezcla de ramas
- Interfaces gráficas (meld, gitk)
- Ejercicios
- GITLab
- Introducción al entorno
- Administración básica
- Mejoras para el grupo de trabajo
- Buenas prácticas durante el desarrollo
- Explicación de posibles flujos de trabajo para un grupo de desarrollo
Nota: El curso se realizará sobre la versión de GIT instalada en el entorno Linux utilizado en el curso.