Bonnes pratiques Git et GitLab 15 min de lecture

Conventions de commit et branches protegees

Conventional Commits

La convention Conventional Commits standardise les messages de commit.

# Format
<type>(<scope>): <description>

# Types courants
feat: ajout d'une fonctionnalite
fix: correction de bug
docs: documentation
style: formatage (pas de changement logique)
refactor: restructuration du code
test: ajout de tests
chore: maintenance (deps, config)
ci: modifications CI/CD

# Exemples
feat(auth): ajouter la connexion par Google
fix(api): corriger le timeout sur /users
docs(readme): ajouter les instructions d'installation
ci(pipeline): ajouter le stage de deploy staging

Branches protegees

Proteger les branches critiques empeche les push directs et force les Merge Requests.

Configuration dans GitLab

# Settings > Repository > Protected branches
# - Branch : main
# - Allowed to merge : Maintainers
# - Allowed to push : No one (force MR)
# - Require approval : 1+ reviewer

Regles de MR

# Settings > Merge Requests
# - Merge method : Merge commit / Squash / Fast-forward
# - Merge checks :
#   - Pipeline must succeed
#   - All discussions must be resolved
#   - Approval rules (nombre de reviewers)

Tags et releases

# Creer un tag
git tag -a v1.0.0 -m "Release version 1.0.0"
git push origin v1.0.0

# Lister les tags
git tag -l

# GitLab cree automatiquement une release
# a partir des tags (Deploy > Releases)
Conseil : Combinez branches protegees, pipelines obligatoires et reviews pour un workflow solide et securise.