Même en solo, organiser son travail par branche permet de garder un historique propre et d’isoler chaque changement.
Modèle recommandé : trunk-based#
Le modèle trunk-based reste le plus fluide : tout converge vers une branche principale stable (main), depuis des branches courtes et ciblées.
main: branche stable, toujours exécutable.- branches courtes : créées pour un besoin précis (nouvelle fonctionnalité, correction, refactor, documentation…).
Exemple :
git checkout -b feat/dbt-silver-salaries
# ... travail en cours ...
git add -A
git commit -m "feat(dbt): build silver tables for salaries aggregation"
Quand créer une branche ?#
Dès qu’un changement peut être isolé :
- ajout d’une fonctionnalité,
- correction de bug,
- refactorisation d’un module,
- mise Ă jour notable de documentation,
- modification d’outillage (CI, lint, scripts…).
Règle simple : une branche = un sujet.
Comment la nommer#
- Format conseillé :
<type>/<slug-court> - kebab-case, sans accents ni espaces :
feat/freework-extract-v2 - slug clair (5–7 mots max) :
fix/parquet-write-permission - le scope éventuel se met dans le message de commit, pas dans le nom de la branche
Types usuels#
feat: nouvelle fonctionnalité ajoutéefix: correction d’un bugrefactor: reorganisation du code sans changement fonctionneldocs: documentationchore: tâches techniques sans impact fonctionnel- MAJ de dépendance, ajustement de structure de projet, ménage dans les fichiers …
ci: pipeline d’intégration continue- modélisation liée aux workflows CI/CD, ajout de steps de build ou de test
build: système de build / packaging- pour les changements dans la façon dont l’application est construite ou distribuée
test: ajout ou modification de tests
Finir et intégrer (résumé d’étapes)#
- Finaliser les commits (tout est vert en local : tests, lint).
- Mettre la branche Ă jour avec
mainsi besoin (pour éviter les conflits) :
git checkout feat/ma-branche
git pull --rebase origin main # remet tes commits au-dessus de main
- Pousser la branche distante :
git push -u origin feat/ma-branche
Ouvrir une Pull Request (mĂŞme en solo) : titre clair, objectif, changements.
- Option recommandée : merge en squash (un seul commit propre dans
main).
- Option recommandée : merge en squash (un seul commit propre dans
Fusionner vers
main, puis récupérermainen local :
git checkout main
git pull
- Supprimer la branche de travail (si la PR a été fusionnée)
Une fois la branche fusionnée dans main, elle peut être supprimée pour garder le dépôt propre.
Cela évite d’accumuler des branches anciennes ou terminées.
git branch -d feat/ma-branche # suppression locale
git push origin --delete feat/ma-branche # suppression distante
Règle pratique : push → PR → merge (squash) → pull main → delete branch
La plupart des plateformes (GitHub, GitLab, etc.) proposent d’ailleurs une option “Delete branch on merge” pour automatiser cette étape.