Les commandes Git

Quelques commandes git bien utiles


Cloner un repository

git clone ssh://user@domain.com/repo.git


Créer un nouveau repository localement

git init


Voir les changements dans votre espace de travail local

git status


Voir les modifications dans les fichiers édités

git diff


Ajouter toutes les modifications au prochain commit

git add .


Pour ajouter un fichier spécifique au prochaine commit

git add <FICHIER>


Pour commit les fichiers ajoutés précédemment

git commit -m "Mon commentaire"


Changer le dernier commit (Ne pas faire sur un commit publié)

git commit --amend -m "Nouveau message"


Voir la liste des commits, en affichant les derniers en premier

git log


Voir les changements sur un fichier spécifique

git log -p <FILE>


Qui a changé quoi et quand dans le fichier

git blame <FILE>


Voir toutes les branches existantes

git branch -av


Passer sur une autre branche

git checkout <BRANCH>


Créer une nouvelle branche

git branch <NEW-BRANCH>


Créer une nouvelle branche basée sur l'actuelle

git checkout --track <REMOTE/BRANCH>


Supprimer une branche locale

git branch -d <BRANCH>


Marquer la validation actuelle avec une balise

git tag <TAG-NAME>


Lister toutes les télécommandes actuellement configurées

git remote -v


Afficher des informations sur une télécommande

git remote show <REMOTE>


Ajouter un nouveau repository distant

git remote add <SHORTNAME> <URL>


Récupérer tous les changements à partir de <REMOTE> mais ne pas les intégrer à HEAD

git fetch <REMOTE>


Récupérer les changements et les merger/intégrer directement dans HEAD

git pull <REMOTE> <BRANCH>


Publier les changements locaux vers le dépôt distant

git push <REMOTE> <BRANCH>


Supprimer une branche sur le dépôt distant

git branch -dr <REMOTE/BRANCH>


Publier vos tags

git push --tags


Fusionner <BRANCH> dans HEAD

git merge <BRANCH>


Rebaser votre courant HEAD sur la <BRANCH> (Ne pas rebase les commits publié)

git rebase <BRANCH>


Annuler un rebase

git rebase --abort


Continuer un rebase après avoir fixé les conflits

git rebase --continue


Utilisez votre logiciel de merge pour résoudre les conflits

git mergetool


Utilisez votre éditeur pour résoudre manuellement un conflit et le marquer comme résolu

git add <RESOLVED-FILE>
git rm <RESOLVED-FILE>


Annuler tous les changements locaux

git reset --hard HEAD


Annuler tous les changements dans un fichier spécifique

git checkout HEAD <FILE>


Revenir sur un commit (en produisant un nouveau commit avec des changements contraires)

git revert <COMMIT>


Réinitialisez votre pointeur HEAD sur un commit précédent et annulez toutes les modifications depuis

git reset --hard <COMMIT>


Réinitialiser votre pointeur HEAD sur un précédent commit et préserver tous les changements "Unstaged"

git reset <COMMIT>


Réinitialiser votre pointeur HEAD sur un précédent commit et conserver les modifications locales non validées

git reset --keep <COMMIT>


Cours rédigé par Vincent, publié le 25/05/2021