Por Anónimo (no verificado) , 29 Abril 2026

Qué es Git Flow

Git Flow es un modelo de branching propuesto por Vincent Driessen en 2010. Define cinco tipos de branch — main, develop, feature/*, release/*, hotfix/* — y reglas para cómo interactúan.

Los cinco branches

  • main - código listo para producción.
  • develop - branch de integración para la próxima release.
  • feature/* - desde develop, mergeado a develop.
  • release/* - desde develop, mergeado a main y de vuelta.
  • hotfix/* - desde main, mergeado a main y develop.

Ciclo de vida de un feature

git checkout develop
git pull
git checkout -b feature/oauth-login
git checkout develop
git merge --no-ff feature/oauth-login
git push origin develop
git branch -d feature/oauth-login

Una release

git checkout develop
git checkout -b release/1.4.0
git checkout main
git merge --no-ff release/1.4.0
git tag -a v1.4.0 -m "Release 1.4.0"
git checkout develop
git merge --no-ff release/1.4.0
git branch -d release/1.4.0

Un hotfix

git checkout main
git checkout -b hotfix/1.4.1
git checkout main
git merge --no-ff hotfix/1.4.1
git tag -a v1.4.1 -m "Hotfix 1.4.1"
git checkout develop
git merge --no-ff hotfix/1.4.1

El CLI git-flow

brew install git-flow-avh
git flow init
git flow feature start oauth-login
git flow feature finish oauth-login

Cuándo encaja Git Flow

  • Software versionado descargable.
  • Mantenimiento paralelo de versiones.
  • Ciclos largos de QA.

Cuándo no encaja

  • Apps web desplegadas continuamente.
  • Equipos pequeños sin proceso dedicado.
  • Culturas trunk-based.