Saltar al contenido

rama de git

Definición

El comando git branch crea, lista y elimina ramas. No permite cambiar entre ramas ni volver a unir una historia bifurcada. Por lo tanto, git branch se integra con los comandos git checkout y git merge.

git branch

Uso de git branch

La ramificación es una función disponible en la mayoría de los sistemas de control de versiones. Las ramas de Git son un puntero a una instantánea de los cambios que has realizado. Se crea una nueva rama para encapsular los cambios cuando deseas corregir errores o agregar nuevas funciones. Esto te ayuda a limpiar el historial futuro antes de fusionarlo. Las ramas de Git son una parte esencial del flujo de trabajo diario. Git no copia archivos de un directorio a otro, almacena la rama como una referencia a un commit.

Cómo funciona

Las ramas representan una línea de desarrollo aislada. Se utilizan como una forma de solicitar un nuevo directorio de trabajo, área de preparación e historial del proyecto. Desarrollar líneas de desarrollo aisladas para dos funciones en ramas permitirá operar en ellas en paralelo y mantener la rama master libre de código dudoso.

git branch1

Opciones comunes

git branchLista todas las ramas del repositorio (igual que git branch --list).
git branch <branch>Crea una nueva rama llamada <branch> pero no realiza el checkout de la nueva rama.
git branch -d <branch>Elimina una rama. Si hay cambios sin fusionar, Git no te permite eliminarla.
git branch -D <branch>Fuerza la eliminación de la rama, incluso si hay cambios sin fusionar. Ejecuta este comando cuando estés seguro de eliminarla permanentemente.
git branch -m <branch>Mueve o renombra la rama actual a <branch>.
git branch -aLista todas las ramas locales y remotas.

Creación de ramas

Las ramas son simplemente punteros a commits. Cuando creas una rama, Git creará un nuevo puntero. Esto no cambia el historial del repositorio.

git branch2

Puedes crear una rama con el comando git branch:

el comando git branch

bash
git branch test_branch

El historial del repositorio permanecerá sin cambios. Se creará un nuevo puntero al commit actual:

git branch3

La rama recién creada debe seleccionarse con git checkout y luego git add y git commit para agregar commits a ella.

Creación de ramas remotas

El comando git branch no solo opera en las ramas locales, sino también en las ramas remotas. Crear una rama en un repositorio remoto debe configurarse y agregarse a la configuración del repositorio local:

el comando git branch

bash
git remote add new-remote-repo https://hostname/user/repo.git
# Add remote repo to local repo config
git push <new-remote-repo> test_branch
# pushes the test_branch branch to new-remote-repo

Eliminación de ramas

Después de terminar el trabajo en una rama y fusionarla con la master principal, puedes eliminarla:

eliminación de ramas en git

bash
git branch -d test_branch

Si quedan cambios sin fusionar, se producirá un error:

error al eliminar rama en git

bash
error: The branch 'test_branch' is not fully merged.
If you are sure you want to delete it, run 'git branch -D test_branch'.

Si estás seguro de que deseas eliminar la rama permanentemente, puedes usar el comando git branch con la opción mayúscula -D:

eliminación forzada de rama en git branch

bash
git branch -D test_branch

Los comandos mencionados anteriormente solo eliminan la copia local de una rama. La rama aún puede existir en repositorios remotos. Ejecuta lo siguiente para eliminar la rama remota:

eliminar rama remota en git

bash
git push origin --delete test_branch

o

eliminación de rama remota en git

bash
git push origin :test_branch

Práctica

¿Cuáles son las características y funcionalidades del comando 'git branch'?

¿Te resulta útil?

Vista previa dual-run — compárala con las rutas Symfony en producción.