Workflows Git
Comment les équipes organisent branches, revues et versions. Chaque workflow ci-dessous est présenté avec ses règles telles que formulées par sa source d’origine, les cas où il convient, et une démonstration animée — exécutée par le simulateur Git et vérifiée avec le vrai Git.
| Workflow | Branches de longue durée | Mode de publication | Idéal pour |
|---|---|---|---|
| main | Déployer main après chaque pull request fusionnée | Applications en déploiement continu | |
| main, develop | Branches de release, taguées sur main | Logiciels versionnés, plusieurs versions maintenues | |
| main (the trunk) | Depuis le tronc, ou une branche de release de courte durée | Équipes CI/CD qui intègrent chaque jour | |
| upstream’s main | Les mainteneurs fusionnent les pull requests venant des forks | Open source, contributeurs sans droit d’écriture |
GitHub flow
Une branche main + des branches de courte durée + des pull requests
Un workflow léger, basé sur les branches. Tout ce qui est dans main est déployable ; chaque modification se fait sur sa propre branche au nom descriptif, fusionnée dans main via une pull request relue, puis déployée.
Les règles
- Tout ce qui est dans la branche main est déployable.
- Créez une branche au nom descriptif à partir de main pour chaque modification.
- Committez en local et poussez régulièrement vers la branche du même nom.
- Ouvrez une pull request pour avoir des retours, ou quand la branche est prête à être fusionnée.
- Fusionnez dans main après la revue, puis supprimez la branche.
- Déployez dès la fusion (dans l’article d’origine : « vous pouvez et devriez déployer immédiatement »).
✓ À utiliser quand
Applications web et services déployés en continu à partir d’une seule version.
✗ À éviter quand
Vous devez maintenir plusieurs versions publiées en parallèle.
Sources
L’ouverture et la fusion de la pull request se font sur GitHub ; la démonstration montre les opérations Git équivalentes (le bouton de fusion par défaut de GitHub crée un commit de fusion).
Mettez le workflow en place et parcourez-le une fois.
1 Créer une branche
2 Faire des modifications
3 Créer une pull request
4 Traiter les commentaires de relecture
5 Fusionner votre pull request
6 Supprimer votre branche