Skip to content

Bonnes Pratiques Git pour la Collaboration

Objectif

Qualité durable + historique clair + friction réduite.

Principes

PrincipeBénéfice
Branches courtesConflits réduits
Commits atomiquesReverts simples
Revue précoceAjustement rapide
AutomatisationConstance
TransparenceConfiance

Nommage Branches

feature/<scope>-<résumé>
fix/<issue>-<bug>
chore/<tâche>
refactor/<zone>
docs/<sujet>
release/<version>

Messages de Commit (Convention)

<type>(<scope>): <résumé impératif>

<context>
<détails>

Types: feat, fix, refactor, chore, docs, test, perf, ci.

Commits Atomiques

Éviter mélange logique + formatage + refactor dans un seul.

Squash

  • Nettoyer WIP
  • Pas pour commits déjà sémantiques

Rebase vs Merge

SituationChoix
PR petiteRebase
Historique partagé complexeMerge
Politique linéaireRebase

Mettre à Jour Régulièrement

bash
git fetch origin
git rebase origin/main

Hooks Locaux

HookUsage
pre-commitLint rapide
commit-msgValider format
pre-pushTests

Revue de Code

FocusGuide
IntentionComprendre pourquoi
ExactitudeLogique, edge cases
ImpactPerformance, sécurité
ClartéNoms, découpage

Checklist PR Exemple

  • [ ] Tests passent
  • [ ] Lint OK
  • [ ] Docs à jour
  • [ ] Pas de debug leftover

Branches Release

  • Tag sémantique
  • Seule corrections critiques

Feature Flags

Fusionner tôt masqué derrière flag.

Anti‑Patterns

PatternProblème
PR monolithiqueRevue lente
Force push sur mainInstabilité
Commits "fix stuff"Opacité

Mesures Indicatives

MétriqueCible
PR ouverte moyenne< 24h
Taille PR< 300 LOC

Récupération

bash
git reflog
git reset --hard <hash>

Résumé

Légèreté + discipline = flux prévisible. Prioriser lisibilité future de l'historique.