Git: Técnicas avanzadas
Mejora tu flujo de trabajo en Git con técnicas avanzadas. Aprende a manejar ramas, rebase, cherry-pick y más, siguiendo las mejores prácticas de 2024.
Aprende Git GRATIS y certifícateGit es una herramienta esencial para el control de versiones en el desarrollo de software. En este módulo, exploraremos técnicas avanzadas que te permitirán optimizar tu flujo de trabajo y gestionar repositorios de manera más eficiente.
Manejo avanzado de ramas
El manejo de ramas es fundamental en Git. A continuación, se presentan algunas técnicas avanzadas:
Creación de ramas a partir de un commit específico
Para crear una nueva rama a partir de un commit específico, utiliza el siguiente comando:
git checkout -b <nombre-rama> <commit-hash>
Este comando crea y cambia a una nueva rama a partir del commit indicado.
Limpieza de ramas remotas
Para eliminar ramas remotas que ya no se utilizan, ejecuta:
git fetch -p
Este comando limpia las ramas remotas que no tienen un equivalente local.
Uso avanzado de rebase
El rebase es una técnica poderosa para mantener un historial de commits limpio y lineal. Aquí se explican algunas de sus aplicaciones avanzadas.
Rebase interactivo
Para reordenar, combinar o eliminar commits, usa rebase interactivo:
git rebase -i HEAD~n
Reemplaza n
con el número de commits que deseas revisar. En el editor que se abre, puedes modificar la lista de commits según tus necesidades.
Rebase de una rama sobre otra
Para aplicar los commits de una rama sobre otra, ejecuta:
git checkout <rama-destino>
git rebase <rama-origen>
Esto mueve los commits de rama-origen
y los aplica sobre rama-destino
.
Uso de cherry-pick
El comando cherry-pick
permite aplicar cambios específicos de un commit en otra rama. Esto es útil para integrar soluciones puntuales sin necesidad de un merge completo.
git cherry-pick <commit-hash>
Este comando aplica los cambios del commit especificado en la rama actual.
Resolución avanzada de conflictos
La resolución de conflictos es una parte inevitable del uso de Git. Aquí se presentan algunas técnicas avanzadas para manejarlos:
Herramientas de fusión
Git permite configurar herramientas de fusión externas para resolver conflictos. Para configurar una herramienta como Kdiff3
, usa:
git config --global merge.tool kdiff3
git config --global mergetool.kdiff3.path "/ruta/a/kdiff3"
Continuar rebase después de resolver conflictos
Después de resolver conflictos durante un rebase, utiliza:
git add <archivos-resueltos>
git rebase --continue
Este comando continúa el proceso de rebase después de que los conflictos han sido resueltos.
Stash avanzado
El comando git stash
permite guardar cambios temporales. A continuación, se presentan algunas técnicas avanzadas de uso:
Guardar cambios no rastreados
Para incluir archivos no rastreados en el stash, usa:
git stash -u
Aplicar y eliminar stash
Para aplicar y eliminar un stash en una sola operación, ejecuta:
git stash pop
Lecciones de este módulo de Git
Lecciones de programación del módulo Técnicas avanzadas del curso de Git.
Ejercicios de programación en este módulo de Git
Evalúa tus conocimientos en Técnicas avanzadas con ejercicios de programación Técnicas avanzadas de tipo Test, Puzzle, Código y Proyecto con VSCode.