
Git - commandes & bonnes pratiques
Retrouvez les bonnes pratiques pour Git avec des normes universelles lors des commits, ainsi que les commandes les plus utilisées.
Commandes
- PULL :
git pull --rebase
git pull : fetch + merge
--rebase : conserve l'historique des commits
COMMIT :
git add .(ou par fichier si plusieurs commit à prévoir)git commit -m "$type($scope): $description_in_english"PUSH :
git pushTREE :
git log --graph --oneline --allRenommer le dernier commit :
git commit --amendBranches :
- lister les branches locales :
git branch -l - liste les branches distantes :
git branch -r - Toutes les branches (locale et distante) :
git branch -a - Supprimer une branche locale :
git branch -D $nom_branche_locale - Supprimer une branche distante :
git push origin -d $nom_branche_distante - Clean branche distante :
git remote prune origin
- lister les branches locales :
Bonnes pratiques
Nommage des branches
- feature/$description : ajout/modification/suppression de fonctionnalité, en Kebab Case (mots en minuscules séparés par des -) , ex :
- feature/init-database
- feature/add-user-crud-ui
- bugfix/$description : correction d'un BUG ($description doit être synthétique, fonctionnelle ou technique en Kebab Case), ex :
- bugfix/cncd-33-header-user-connected
- hotfix/$nom-du-hotfix : correction d'un BUG avec une solution temporaire le temps de le corriger complètement (Kebab Case), ex :
- hotfix/header-user-connected
- test/$description : expérimentation / wip, ex:
- test/add-tu-user
Nommage des commits
$type($scope): $description
- type :
- build : changements qui affectent le système de build ou des dépendances externes (mvn, npm, make…)
- ci : changements concernant les fichiers et scripts d’intégration ou de configuration (pipeline)
- feat : ajout d’une nouvelle fonctionnalité
- fix : correction d’un bug
- perf : amélioration des performances
- refactor : factorisation/réécriture du code
- style : changement qui n’apporte aucune altération fonctionnelle ou sémantique (indentation, mise en forme, ajout d’espace, variable renommer…)
- docs : rédaction ou mise à jour de documentation
- test : ajout ou modification de tests unitaires/intégration
- revert : annulation d'un commit
- chore : tout ce qui ne concerne pas les autres type (souvent lié à l'orchestration/init du projet)
- scope : domaine fonctionnel (feat, test) ou technique (refactor, chore, revert,...) du commit - Breaking change : ajouter un "!" devant le scope
- Description : description en Anglais du commit, synthétique
