1. INTRODUCCIÓN TÉCNICA Las estrategias de branching son una parte esencial del trabajo con Git y GitLab en un entorno profesional. Permiten a los equipos colaborar de manera eficiente en un proyecto, al tiempo que mantienen un historial limpio y comprensible de los cambios. Una estrategia de branching bien planificada ayuda a evitar conflictos innecesarios, facilita el seguimiento de bugs y acelera el proceso de lanzamiento de nuevas características. En este módulo, nos centraremos en dos de las estrategias más populares: Git Flow y Trunk Based Development. Ambas tienen ventajas y desventajas únicas, y la elección depende en gran medida del tamaño del equipo, la complejidad del proyecto y la frecuencia de los lanzamientos.
2. COMANDOS Y EJEMPLOS PRÁCTICOS AVANZADOS - Inicializar un repositorio con `git init` y clonarlo con `git clone`. Ejemplo: `git clone --depth 1 https://github.com/example/repo.git` clonará el repositorio sin el historial completo, lo que puede ahorrar tiempo y espacio. - Añadir cambios selectivamente con `git add -p`, que permite revisar cada cambio antes de confirmarlo. - Hacer commit de los cambios con `git commit`, siguiendo las convenciones de mensajes de commit como "fix: corregir error de cálculo". - Realizar seguimiento de las ramas remotas con `git push -u origin branch-name`. - Crear y cambiar entre ramas con `git checkout -b branch-name` o `git switch branch-name`. - Mezclar cambios con `git merge`, usando estrategias como `--no-ff` para mantener un historial más legible. - Filtrar y formatear el historial con `git log --pretty=oneline --abbrev-commit --graph`. - Rebasar la historia con `git rebase` para mantener un historial lineal.
Ejercicios Prácticos Visuales
4. PROBLEMAS COMUNES Y SOLUCIONES AVANZADAS - Error: "¡Tu rama está adelante de 'origin/master' por 1 commit!" Diagnóstico: Has hecho un commit pero no lo has empujado a la rama remota. Solución: Usa `git push origin master` para empujar tus cambios. - Error: "¡Conflicto de fusión!" Diagnóstico: Dos ramas que intentas fusionar han modificado la misma parte de un archivo. Solución: Abre el archivo en conflicto, resuelve las diferencias y luego haz commit de la versión resuelta.
5. MEJORES PRÁCTICAS EMPRESARIALES - Mantén las ramas de características cortas y fusiona con frecuencia. - Usa mensajes de commit descriptivos y significativos. - Evita hacer commit de archivos grandes o binarios. - Realiza un pull antes de empujar para evitar conflictos innecesarios. - Usa `git rebase` en lugar de `git merge` para un historial más limpio.