Git Branching y Merging
Navegación entre Ramas
Navegación entre Ramas en Git
La navegación entre ramas es una habilidad esencial en Git, que permite moverse entre diferentes contextos de trabajo dentro de un repositorio de manera rápida y eficiente. Esto es particularmente útil cuando trabajas en múltiples características o correcciones de errores de forma paralela.
Cambio de Rama
Para cambiar de una rama a otra, utiliza el comando git checkout
:
bash
Ejemplo:
bash
Este comando cambia a la rama feature-xyz
.
Listado de Ramas
Siempre es bueno saber en qué rama te encuentras y ver las otras ramas disponibles. Usa el siguiente comando para listar todas las ramas:
bash
El asterisco (*
) indica la rama en la que te encuentras actualmente.
Ejemplo:
En este ejemplo, te encuentras en la rama main
.
Visualización de la Rama Actual
Si solo te interesa saber en qué rama te encuentras, puedes usar:
bash
Este comando muestra el nombre de la rama actual.
Navegación a la Rama Anterior
A veces, es útil moverse rápidamente a la rama anterior en la que estabas trabajando. Esto se puede hacer con:
bash
Ejemplo:
Supongamos que estás en main
y cambiaste a feature-xyz
:
bash
Para volver a main
rápidamente:
bash
Cambio a una Rama Remota
Si quieres cambiar a una rama remota que aún no has verificado localmente, primero debes traer la información de la rama remota y luego cambiarte a ella:
bash
Ejemplo:
bash
Estos comandos traen la información de la rama feature-abc
desde el repositorio remoto y crean una rama local con el mismo nombre basada en la rama remota.
Navegación entre Ramas y Trabajo No Completado
Si intentas cambiarte de rama y tienes cambios no confirmados en tu directorio de trabajo, Git no permitirá el cambio a menos que hagas un stash de los cambios. Puedes hacer un stash y luego cambiar de rama:
bash
Y luego recuperar tus cambios:
bash
Resumen
- Cambio de rama:
git checkout <nombre-de-la-rama>
- Listado de ramas:
git branch
- Mostar la rama actual:
git branch --show-current
- Cambio rápido a la rama anterior:
git checkout -
- Cambio a una rama remota:
git fetch origin
ygit checkout -b <nombre-de-la-rama> origin/<nombre-de-la-rama>
- Cambio de rama con trabajo no completado:
git stash
ygit stash pop
Navegar entre ramas te permite trabajar en múltiples contextos sin perder el enfoque. En el siguiente capítulo, exploraremos cómo fusionar ramas en Git para integrar cambios de una rama a otra.
- Introducción a Git
- Configuración Inicial y Flujo de Trabajo Básico
- Conceptos Básicos de Ramas en Git
- Creación y Eliminación de Ramas
- Navegación entre Ramas
- Fusión (Merging) de Ramas
- Resolución de Conflictos de Fusión
- Estrategias de Fusión: Fast-Forward vs. Recursive
- Rebase en Git: Conceptos y Usos
- Fusión vs. Rebase: Cuándo Usar Cada uno
- Ramas Remotas y su Gestión
- Git Flow y otros Modelos de Flujo de Trabajo
- Buenas Prácticas para Branching y Merging
- Herramientas y Comandos Avanzados
- Conclusión y Recomendaciones Finales