Saltar al contenido principal

Trabajando con Ramas (Branches)

Las ramas (branches) son, sin duda alguna, la característica más poderosa e importante de usar Git en un entorno profesional.

Una rama representa una línea independiente de desarrollo. Piensa en ella como una fotocopia exacta de tu proyecto en un momento dado, en la que puedes experimentar, borrar cosas o añadir nuevas características sin afectar a la versión principal.

La Rama Principal (main o master)

Por defecto, todo repositorio de Git empieza con una rama principal que aloja el código oficial del proyecto. Históricamente se le llamaba master, pero el estándar actual es main.

Regla de oro profesional: NUNCA escribas código directamente en la rama main. Esta rama debe mantenerse estable siempre, lista para ser publicada o enviada a producción. Todos los desarrollos nuevos se hacen en ramas secundarias.


Ver las ramas existentes: git branch

Para saber qué ramas tiene tu proyecto y en cuál estás trabajando actualmente:

git branch

Verás una lista, y la rama en la que estás actualmente (la "activa") tendrá un asterisco * al lado y normalmente estará de color verde.

  feature-login
* main

Crear una nueva rama

Supongamos que tu jefe te pide añadir un "Modo Oscuro" a la página. Para no romper la página si algo sale mal, crearás una rama aislada desde el estado actual del código:

git branch feature-modo-oscuro

Esto crea la rama, pero ¡CUIDADO! Aún sigues parado en la rama main. Tienes que "saltar" a la nueva rama.

Cambiar de rama (Checkout / Switch)

Para moverte físicamente (que todos tus archivos cambien automáticamente) a otra rama:

# El comando clásico (Aún muy usado)
git checkout feature-modo-oscuro

# El comando moderno y recomendado (Introducido en 2019)
git switch feature-modo-oscuro

⭐️ Crear y cambiarse de rama en un solo paso

En el día a día real, el 99% de los programadores combinan la creación y el salto de rama en un solo comando para ahorrar tiempo:

# Método moderno (Recomendado)
git switch -c feature-modo-oscuro

# Método clásico
git checkout -b feature-modo-oscuro

El Flujo con Ramas

  1. Estás en main.
  2. Ejecutas git switch -c feature-login.
  3. Escribes el código HTML y CSS para el login.
  4. Ejecutas git add . y git commit -m "Agrega pantalla de login".
  5. Estos cambios solo existen en la rama feature-login. main aún no sabe que el modo oscuro existe y sigue en su versión anterior.

Para unir ambas líneas del tiempo y juntar el código, se necesita la técnica de Fusión (Merge).