Git Flow
Git Flow est une strategie de branching populaire avec des branches bien definies.
- main : code en production
- develop : integration des features
- feature/* : nouvelles fonctionnalites
- release/* : preparation de version
- hotfix/* : corrections urgentes en production
# Creer une feature
git switch -c feature/nouvelle-page develop
# ... travailler ...
git switch develop
git merge feature/nouvelle-page
# Creer un hotfix
git switch -c hotfix/fix-login main
# ... corriger ...
git switch main
git merge hotfix/fix-login
GitLab Flow (simplifie)
GitLab recommande une approche plus simple :
- main : branche par defaut
- feature branches : une branche par feature/bug
- Merge Requests : seul moyen de merger dans main
- Environments : staging et production lies aux branches ou tags
# Workflow GitLab Flow
git switch -c feature/42-ajouter-panier
# ... travailler et committer ...
git push -u origin feature/42-ajouter-panier
# Creer une MR vers main
# Apres review et merge, deployer automatiquement
Recommandation : Pour la plupart des equipes, GitLab Flow est plus simple et suffisant. Git Flow est utile pour les projets avec des releases planifiees.