
Git
Git — commandes essentielles
Les commandes Git essentielles pour créer un dépôt, gérer les fichiers, commits, branches, synchronisations et corriger les erreurs courantes.
89commandesMis à jour le4 septembre 2026NiveauDébutant
Aucune commande ne correspond à ce choix et à votre recherche.
Repository
5 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git init | Initialise un nouveau dépôt Git dans le dossier courant. | git init | Sûr |
git clone | Clone un dépôt distant sur la machine locale. | git clone https://github.com/user/project.git | Sûr |
git remote -v | Affiche les dépôts distants configurés ainsi que leurs URLs. | git remote -v | Sûr |
git remote add | Ajoute un nouveau dépôt distant au projet. | git remote add origin https://github.com/user/project.git | Sûr |
git remote remove | Supprime une référence vers un dépôt distant. | git remote remove origin | Attention |
Status & fichiers
9 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git status | Affiche l'état des fichiers suivis, modifiés et non suivis. | git status | Sûr |
git status --short | Affiche une version compacte de l'état du dépôt. | git status --short | Sûr |
git add | Ajoute un fichier précis à la zone de staging. | git add index.html | Sûr |
git add . | Ajoute toutes les modifications du dossier courant à la zone de staging. | git add . | Sûr |
git add -p | Permet de sélectionner précisément les portions de modifications à ajouter au staging. | git add -p | Sûr |
git restore | Annule les modifications locales d'un fichier qui n'ont pas encore été commit. | git restore index.html | Attention |
git restore --staged | Retire un fichier de la zone de staging sans supprimer ses modifications. | git restore --staged index.html | Sûr |
git rm | Supprime un fichier du projet et prépare sa suppression pour le prochain commit. | git rm ancien-fichier.txt | Attention |
git mv | Déplace ou renomme un fichier suivi par Git. | git mv ancien.txt nouveau.txt | Sûr |
Commits
6 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git commit | Crée un commit avec les modifications présentes dans la zone de staging. | git commit -m "Ajoute la page connexion" | Sûr |
git commit -am | Ajoute automatiquement les fichiers déjà suivis puis crée un commit. | git commit -am "Corrige le header" | Sûr |
git commit --amend | Modifie le dernier commit, par exemple son message ou son contenu. | git commit --amend | Attention |
git commit --amend --no-edit | Ajoute les changements au dernier commit sans modifier son message. | git commit --amend --no-edit | Attention |
git show | Affiche les informations et modifications du dernier commit. | git show | Sûr |
git show <commit> | Affiche le contenu et les informations d'un commit spécifique. | git show a1b2c3d | Sûr |
Branches
9 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git branch | Affiche la liste des branches locales. | git branch | Sûr |
git branch -a | Affiche les branches locales et distantes. | git branch -a | Sûr |
git branch <nom> | Crée une nouvelle branche sans changer de branche active. | git branch feature/login | Sûr |
git switch | Change la branche actuellement utilisée. | git switch develop | Sûr |
git switch -c | Crée une nouvelle branche et bascule immédiatement dessus. | git switch -c feature/login | Sûr |
git branch -m | Renomme la branche courante. | git branch -m nouveau-nom | Sûr |
git branch -d | Supprime une branche locale uniquement si ses changements ont été fusionnés. | git branch -d feature/login | Attention |
git branch -D | Force la suppression d'une branche locale même si ses changements ne sont pas fusionnés. | git branch -D feature/login | Danger |
git merge | Fusionne une branche dans la branche actuellement active. | git merge feature/login | Attention |
Synchronisation
8 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git fetch | Télécharge les nouvelles références du dépôt distant sans modifier la branche locale. | git fetch origin | Sûr |
git fetch --all | Récupère les mises à jour de tous les dépôts distants configurés. | git fetch --all | Sûr |
git pull | Récupère les modifications distantes puis les intègre dans la branche courante. | git pull | Attention |
git pull --rebase | Récupère les changements distants puis rejoue les commits locaux au-dessus. | git pull --rebase | Attention |
git push | Envoie les commits locaux vers le dépôt distant. | git push | Sûr |
git push -u | Envoie une branche et configure sa branche distante de suivi. | git push -u origin feature/login | Sûr |
git push --force-with-lease | Force la mise à jour distante tout en vérifiant qu'aucun changement distant inattendu n'est écrasé. | git push --force-with-lease | Danger |
git push --force | Force l'écriture de l'historique local sur le dépôt distant et peut écraser le travail d'autres contributeurs. | git push --force | Danger |
Historique
7 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git log | Affiche l'historique détaillé des commits. | git log | Sûr |
git log --oneline | Affiche l'historique des commits sous une forme compacte. | git log --oneline | Sûr |
git log --graph | Affiche une représentation graphique de l'historique des branches. | git log --graph --oneline --all | Sûr |
git log --author | Filtre les commits selon leur auteur. | git log --author="Alice" | Sûr |
git log --since | Affiche uniquement les commits réalisés depuis une période donnée. | git log --since="7 days ago" | Sûr |
git blame | Indique quel commit et quel auteur ont modifié chaque ligne d'un fichier. | git blame src/index.ts | Sûr |
git reflog | Affiche l'historique local des déplacements de HEAD, utile pour retrouver des commits perdus. | git reflog | Sûr |
Différences
4 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git diff | Affiche les modifications non ajoutées à la zone de staging. | git diff | Sûr |
git diff --staged | Affiche les modifications présentes dans la zone de staging. | git diff --staged | Sûr |
git diff <branche> | Compare la branche actuelle avec une autre branche. | git diff main | Sûr |
git diff <commit1> <commit2> | Compare les différences entre deux commits. | git diff a1b2c3d d4e5f6g | Sûr |
Stash
7 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git stash | Met temporairement de côté les modifications locales non commit. | git stash | Sûr |
git stash push -m | Crée un stash avec un message permettant de l'identifier facilement. | git stash push -m "WIP page login" | Sûr |
git stash list | Affiche la liste des stash disponibles. | git stash list | Sûr |
git stash apply | Réapplique un stash sans le supprimer de la liste. | git stash apply stash@{0} | Sûr |
git stash pop | Réapplique le dernier stash puis le retire de la liste. | git stash pop | Attention |
git stash drop | Supprime définitivement un stash spécifique. | git stash drop stash@{0} | Attention |
git stash clear | Supprime définitivement tous les stash enregistrés. | git stash clear | Danger |
Tags
6 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git tag | Affiche la liste des tags du dépôt. | git tag | Sûr |
git tag <nom> | Crée un tag léger sur le commit courant. | git tag v1.0.0 | Sûr |
git tag -a | Crée un tag annoté avec un message. | git tag -a v1.0.0 -m "Version 1.0.0" | Sûr |
git push origin <tag> | Envoie un tag spécifique vers le dépôt distant. | git push origin v1.0.0 | Sûr |
git push origin --tags | Envoie tous les tags locaux vers le dépôt distant. | git push origin --tags | Sûr |
git tag -d | Supprime un tag local. | git tag -d v1.0.0 | Attention |
Annulation & récupération
7 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git revert | Crée un nouveau commit qui annule les modifications introduites par un commit précédent. | git revert a1b2c3d | Sûr |
git reset --soft | Déplace HEAD vers un autre commit tout en conservant les modifications dans la zone de staging. | git reset --soft HEAD~1 | Attention |
git reset | Déplace HEAD et retire les modifications de la zone de staging tout en conservant les fichiers modifiés. | git reset HEAD~1 | Attention |
git reset --hard | Réinitialise HEAD, la zone de staging et les fichiers de travail. Les modifications locales peuvent être perdues. | git reset --hard HEAD~1 | Danger |
git clean -n | Prévisualise les fichiers non suivis qui seraient supprimés par git clean. | git clean -n | Sûr |
git clean -f | Supprime définitivement les fichiers non suivis du dépôt. | git clean -f | Danger |
git restore . | Annule les modifications locales de tous les fichiers suivis du dossier courant. | git restore . | Danger |
Résolution des conflits
8 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git diff --name-only --diff-filter=U | Liste uniquement les fichiers qui contiennent encore des conflits non résolus. | git diff --name-only --diff-filter=U | Sûr |
git restore --ours <fichier> | Résout un fichier en conservant notre version pendant un merge. Pendant un rebase, ours désigne la branche sur laquelle les commits sont rejoués. | git restore --ours src/config.ts | Attention |
git restore --theirs <fichier> | Résout un fichier en conservant la version de l'autre branche pendant un merge. Pendant un rebase, theirs désigne le commit en cours de réapplication. | git restore --theirs src/config.ts | Attention |
git checkout --ours <fichier> | Ancienne syntaxe, encore courante, pour conserver notre version d'un fichier en conflit. | git checkout --ours src/config.ts | Attention |
git checkout --theirs <fichier> | Ancienne syntaxe, encore courante, pour conserver la version de l'autre branche. | git checkout --theirs src/config.ts | Attention |
git add <fichier> | Marque un fichier comme résolu après avoir choisi ou corrigé son contenu. | git add src/config.ts | Sûr |
git merge --continue | Termine ou poursuit le merge une fois tous les conflits résolus et ajoutés au staging. | git merge --continue | Sûr |
git merge --abort | Annule le merge en cours et tente de restaurer l'état précédant le merge. | git merge --abort | Attention |
Rebase
4 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git rebase | Rejoue les commits de la branche courante au-dessus d'une autre branche. | git rebase main | Attention |
git rebase -i | Lance un rebase interactif permettant de réorganiser, fusionner ou modifier des commits. | git rebase -i HEAD~3 | Danger |
git rebase --continue | Continue un rebase après avoir résolu les conflits. | git rebase --continue | Attention |
git rebase --abort | Annule le rebase en cours et restaure l'état précédent. | git rebase --abort | Sûr |
Cherry-pick
3 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git cherry-pick | Applique un commit précis d'une autre branche sur la branche courante. | git cherry-pick a1b2c3d | Attention |
git cherry-pick --continue | Continue un cherry-pick après résolution des conflits. | git cherry-pick --continue | Attention |
git cherry-pick --abort | Annule le cherry-pick en cours et restaure l'état précédent. | git cherry-pick --abort | Sûr |
Configuration
6 commandes| Commande | Description | Exemple | Risque |
|---|---|---|---|
git config --list | Affiche la configuration Git actuellement appliquée. | git config --list | Sûr |
git config user.name | Affiche le nom Git configuré pour le dépôt courant. | git config user.name | Sûr |
git config user.email | Affiche l'adresse e-mail Git configurée pour le dépôt courant. | git config user.email | Sûr |
git config --global user.name | Configure le nom utilisé pour les commits de l'utilisateur. | git config --global user.name "Alice Dupont" | Sûr |
git config --global user.email | Configure l'adresse e-mail utilisée pour les commits de l'utilisateur. | git config --global user.email "alice@example.com" | Sûr |
git config --global init.defaultBranch | Définit le nom utilisé par défaut pour la branche initiale des nouveaux dépôts. | git config --global init.defaultBranch main | Sûr |
