Problema sin ramas:
mainSolución: ¡ramas!
main = siempre establefeature-login = tú desarrollas el inicio de sesiónfeature-api = un compañero desarrolla la APIhotfix-bug = corrección urgenteCada uno en su carril; se fusiona cuando está listo.
mkdir demo-branches && cd demo-branches
git init
# Base de partida
echo "print('App v1.0')" > app.py
git add . && git commit -m "Versión inicial"
# Crear y cambiar a una rama nueva
git checkout -b feature-login
echo "print('Login system')" > login.py
git add . && git commit -m "Add login"
# Volver a main
git checkout main
echo "print('App v1.1')" > app.py
git add . && git commit -m "Update main"
# Ver todas las ramas
git branch --all
# Fusionar la feature
git merge feature-loginResultado: ¡los 2 desarrollos quedan combinados!
MERGE:
git merge feature-branch # Crea un commit de mergeREBASE:
git rebase main # "Desplaza" tus commits después de mainRecomendación: ¡empieza por MERGE!
| Comando | Acción |
|---|---|
git branch | Listar las ramas |
git checkout -b <nom> | Crear + cambiar a la rama |
git checkout <nom> | Cambiar de rama |
git merge <branche> | Fusionar una rama |
git branch -d <nom> | Eliminar una rama |
git push origin <nom> | Enviar la rama |
Flujo simple y eficaz:
Feature nueva:
git checkout main
git pull
git checkout -b feature-nouvelle-fonctionnaliteDesarrollar:
# Código, código, código...
git add .
git commit -m "Feature terminée"Fusionar:
git checkout main
git merge feature-nouvelle-fonctionnalite
git branch -d feature-nouvelle-fonctionnalite # Limpiar¡Eso es todo! Ramas = organización y limpieza.