Ingeniería de historial y automatización con GitHub Actions

Aprende a mantener un historial legible (rebase interactivo, squash, tags) y automatiza checks de calidad con workflows en GitHub Actions.

En nivel pro no basta con que el código funcione: el historial debe contar una historia clara y la calidad debe validarse sola en cada push 🚀.

Aquí unirás dos piezas: commits limpios (squash/rebase) y pipelines mínimas de CI con GitHub Actions.

Si todavía te cuesta gestionar conflictos, te conviene consolidar primero <a href="/curso/git-github/leccion/git-github-conflictos-rebase-ramas">la lección de conflictos y rebase</a>.

  • Reescribe localmente antes de publicar para que la PR sea fácil de revisar.
  • Con <code>git rebase -i</code> puedes agrupar commits ruidosos en uno o reordenarlos para que tengan sentido narrativo. Esto mejora revisión y reduce fricción en auditorías técnicas.
  • Usa tags para marcar versiones estables (<code>v1.2.0</code>) y conectar historial con despliegues.
  • Cada push ejecuta checks y evita romper main.
  • Un workflow básico ejecuta instalación de dependencias y tests en cada pull request. Si falla, no se mergea hasta resolverlo. Esa barrera automática evita regressions tontas.

Historial legible: menos ruido, más contexto

Reescribe localmente antes de publicar para que la PR sea fácil de revisar.

Con <code>git rebase -i</code> puedes agrupar commits ruidosos en uno o reordenarlos para que tengan sentido narrativo. Esto mejora revisión y reduce fricción en auditorías técnicas.

Usa tags para marcar versiones estables (<code>v1.2.0</code>) y conectar historial con despliegues.

CI mínima con GitHub Actions

Cada push ejecuta checks y evita romper main.

Un workflow básico ejecuta instalación de dependencias y tests en cada pull request. Si falla, no se mergea hasta resolverlo. Esa barrera automática evita regressions tontas.

Aunque el YAML no sea complejo, el impacto en calidad de equipo es enorme. Empieza simple y evoluciona con tus necesidades reales.

Git & GitHub
11

Ingeniería de historial y automatización con GitHub Actions

Aprende a mantener un historial legible (rebase interactivo, squash, tags) y automatiza checks de calidad con workflows en GitHub Actions.

Código del tema: git commit -m "feat: agrega validacion"

📘 Teoría

Historial legible: menos ruido, más contexto

Reescribe localmente antes de publicar para que la PR sea fácil de revisar.

1

Con git rebase -i puedes agrupar commits ruidosos en uno o reordenarlos para que tengan sentido narrativo. Esto mejora revisión y reduce fricción en auditorías técnicas.

2

Usa tags para marcar versiones estables (v1.2.0) y conectar historial con despliegues.

Rebase interactivo + tag
git rebase -i HEAD~5
git tag -a v1.2.0 -m "release 1.2.0"
git push origin v1.2.0

CI mínima con GitHub Actions

Cada push ejecuta checks y evita romper main.

1

Un workflow básico ejecuta instalación de dependencias y tests en cada pull request. Si falla, no se mergea hasta resolverlo. Esa barrera automática evita regressions tontas.

2

Aunque el YAML no sea complejo, el impacto en calidad de equipo es enorme. Empieza simple y evoluciona con tus necesidades reales.

Ruta típica de workflow
mkdir -p .github/workflows
# crear archivo ci.yml con jobs de test
git add .github/workflows/ci.yml
git commit -m "ci: añade workflow de tests"

🧭 Visuales clave

Configuración del repositorio para checks y automatizaciones

Encaja con la parte de GitHub Actions porque hace visible que la automatización también necesita gobierno y reglas dentro del repositorio.

Pantalla de ajustes de Actions en un repositorio para ilustrar cómo se gobiernan automatizaciones y checks

Resumen de corrección sugerida por Dependabot

Aporta un ejemplo real de automatización útil: detectar dependencia vulnerable y proponer una vía concreta de actualización.

Resumen de una alerta de Dependabot con propuesta de corrección para explicar automatización de mantenimiento

Resultado de análisis automático de seguridad en el código

Refuerza la idea de que los checks automáticos no solo ejecutan tests: también pueden revisar seguridad y bloquear riesgos antes del merge.

Detalle de una alerta de code scanning en GitHub usada para explicar validaciones automáticas de calidad y seguridad

🧪 Aprende probando

Ejemplo Ejemplo guiado: limpiar 4 commits en 1 Simula squash de commits de trabajo intermedio.
Ejemplo Ejemplo guiado: etiquetar release Marca una versión y publícala en remoto.
Ejemplo Demo: checklist de CI en PR Recordatorio rápido de flujo con Actions.

🏁 Retos

Reto Reto: crear tag anotado Genera una etiqueta de versión con mensaje.
Reto Reto: publicar una etiqueta Empuja el tag v1.0.0 al remoto origin.

🧰 Recursos

Test

Comprueba tus conocimientos con un test sobre Git & GitHub.

Test de Git & GitHub

¿Qué es esto?

Soy Cristian Eslava y a veces hago webs para procrastinar yo y vosotros 😉.

Esta la hice en febrero de 2026 para facilitar el aprendizaje de mis alumnxs. Aprender desarrollo web practicando. La idea es que crezca semanalmente con nuevos temas, tests y retos.

Inspirado en MDN, en W3Schools, en Codepen, en el crack de Manz y en mil sitios de documentación sobre desarrollo web. Quería aportar además de bloques teóricos con ejemplos, la gamificación de los retos y el sistema de test que ya tenía en culTest .

Si te gustó, si no te gustó, si quieres saludarme, o invitarme a 🍻 no dudes en escribirme en cristianeslava@gmail.com .