4.29.5.1 Control de versiones y desarrollo en equipo (git) (8 horas)

Resultados de la carrera Outcomes: 2,5,6,AG-C03,AG-C07,AG-C09
Temas
  1. Flujos: trunk-based (recomendado) vs. Git-flow.
  2. rebase interactivo, cherry-pick, bisect, reflog.
  3. Mensajes tipo Conventional Commits y Pull Requests profesionales.
  4. Git hooks + GitHub Actions básicas (linters + tests).
  5. Resolución de conflictos complejos en código y archivos de configuración.
  6. Meta-objetivo: al menos 50 PRs revisados y recibidos durante el curso.

Objetivos de Aprendizaje (Learning Outcomes)
  1. Evaluar y seleccionar entre flujos de trabajo modernos (trunk-based vs. Git-flow) según las características del proyecto y del equipo.
  2. Aplicar comandos avanzados de Git (rebase, cherry-pick, bisect) para mantener un historial limpio, incorporar cambios selectivos y depurar eficientemente la introducción de errores.
  3. Crear mensajes de commit siguiendo el estándar Conventional Commits y redactar Pull Requests profesionales que faciliten la revisión de código.
  4. Configurar y utilizar hooks de Git y pipelines básicas de GitHub Actions para automatizar la verificación de calidad (linters) y la ejecución de tests.
  5. Resolver conflictos complejos en merges o rebases, tanto en código como en archivos de configuración, analizando las diferencias y tomando decisiones integradoras.
  6. Demostrar competencia en un entorno de desarrollo colaborativo mediante la revisión activa de código y la incorporación de feedback en sus propios trabajos (meta-objetivo de 50 PRs).
Bibliografía: [,,,]

Generado por Ernesto Cuadros-Vargas , Sociedad Peruana de Computación-Peru, basado en el modelo de la Computing Curricula de IEEE-CS/ACM