Vous êtes sur la page 1sur 44

18/08/2023 13:32 19 commandes git indispensables pour les développeurs

Comment Coder

Apprenez à coder gratuitement en moins de 30 jours ! 📕

19 commandes git
indispensables pour les
développeurs
Article mis à jour le lundi 26 juin 2023.

Vous voulez apprendre les commandes de base de git ? Vous connaissez git push
git pull et git clone et voulez apprendre plus du commandes ? Vous perdez du
temps car vous ne maîtrisez pas git ?

Alors ce top des commandes git les plus utiles est fait pour vous !

Git est un logiciel de contrôle de version (version control) qui permet d’avoir un
historique les modifications apportées a son code ou a celui des autres. Ce
projet open-source gratuit est un standard de l’industrie que tout développeur
se doit de connaître sur le bout des doigts !

Apres avoir lu cet article vous serez capables de :

https://www.commentcoder.com/commandes-git/ 1/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

Manipuler des branches

Pousser du code avec git sur github ou un autre serveur git (push)

Télécharger du code de github (clone)

Écrire proprement vos messages commit

Maîtriser votre flow localement

Commençons sans plus tarder a explorer les commandes git les plus utiles !

git config

Pour configurer votre username et l’adresse email à utiliser pour vos commits. Le flag
-global rend ces changements persistants sur votre machine plutôt
qu’uniquement pour le projet.

git config username

git config –global user.name <votre_nom_d'utilisateur>

git config email

https://www.commentcoder.com/commandes-git/ 2/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

git config –global user.email <votre_adresse_email>

Si vous travaillez depuis plusieurs machines et que vos commit


semblent afficher différents emails ou pseudo, c’est parce que
vous n’avez pas la meme configuration !

git init

Pour initialiser un nouveau repo, utilisez la commande :

git init <le_nom_de_votre_repo_git>

git init bare

Un repo initialisé avec le flag bare n’aura pas de working tree. Ce qui veut dire
qu’on ne pourra pas simplement git add des fichiers pour ensuite les commit et les
push. D’ailleurs si vous git init --bare un dossier et puis tapez ls -la vous verrez
que git n’a pas généré de .git mais plutôt ce qui se trouve habituellement dans un
dossier cache .git, directement a la racine de votre dossier.

https://www.commentcoder.com/commandes-git/ 3/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

git init --bare <nom_de_depot>

MAIS ALORS A QUOI SERT GIT INIT — BARE ?

On initialise un repo avec bare quand on veut par exemple, trigger des git hooks
quand une certaine action se produit. On peut ainsi mettre en production des
projets a chaque nouveau commit.

git init --bare est aussi utile quand on travaille en équipe et qu’on veut un
remote repository commun, pour ne pas polluer le repo et n’avoir que les commit,
on met a jour le repo sur github ou sur un autre serveur git uniquement avec des
git push, sans modifier le code directement (comme il n’y a pas de working tree).

Par convention, quand on initialise un repo avec git init --bare, on ajoute .git en
fin de nom de dossier. Ainsi, monprojet devient monprojet.git

git clone

Pour cloner un dépôt à partir d’une URL existante (github, gitlab, serveur git prive,
…).

git clone <url_du_depot_git>

https://www.commentcoder.com/commandes-git/ 4/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

git add

Pour ajouter un fichier en staging. On peut add un ou plusieurs fichiers et certains


flags sont comme le flag --patch sont particulièrement utiles.

git add <nom_du_ou_des_fichier(s)>

git add *

git add --patch *

Le flag —patch lance un programme interactif qui vous permet


d’ajouter en staging ou pas certains bouts de code. Vous aurez
plusieurs options comme split pour diviser encore plus le code
en morceaux. --patch est parfait si vous avec fait plusieurs
modifications dans un fichier mais que vous ne voulez
commit qu’une modification dans ce meme fichier.

git commit

https://www.commentcoder.com/commandes-git/ 5/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

La commande git commit permet d’enregistrer les changements effectués sur


votre code dans l’historique git.

Qu’est ce qu’un commit dans git ?

Un commit est une “capture” de l’état actuel de votre code à un moment précis.

Pour qu’un commit soit le plus leger possible, git compresse la différence (delta)
entre la version antérieure de votre code et les modifications apportées par le
nouveau commit.

Avec ce système de commit, git garde un historique de tous les changements


apportés au fil du temps et vous permet de revenir facilement à un état précédent
de votre code (quand ça fonctionnait).

Pour “commiter” du code, on utilise la commande git commit.

Comment faire un commit sur git ?

Après avoir ajouté vos changements avec une commande comme git add ..., il
faut ajouter ces modifications à git avec la commande git commit. En plus de la
date et le lien vers la version antérieure de votre code base, il est de pratique
standard d’ajouter un message de commit aussi explicite que possible.

https://www.commentcoder.com/commandes-git/ 6/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

Avoir un message de commit clair permet à vos collaborateurs (ou votre “vous” du
futur) de s’y retrouver facilement.

Idéalement, vous avez configuré Vim, Emacs, Nano ou un autre éditeur de texte
pour qu’il soit votre éditeur de texte Git par défaut.

Pour écrire votre message de commit proprement et éviter les symboles qui cassent
vos commit, utilisez :

git commit

Votre éditeur de texte se lance et vous pouvez formater votre message proprement
avec les conventions que vous utilisez.

Quelle est la commande git qui permet d’écrire un


message de commit ?

Comme nous l’avons vu juste au dessus, en plus de garder un historique de vos


changements, lier un message à un commit permet de s’y retrouver plus facilement
quand vous naviguez entre les versions de votre code.

Parfois, on n’a pas besoin d’écrire un long message de commit expliquant toutes les
modifications apportées, le type de modification et son “scope”.

Parfois on veut juste écrire un message de commit rapide, directement dans le


terminal, et il existe une commande pour ça.

Pour aller plus vite, vous pouvez donc directement mettre votre message en ligne
de commande avec le flag -m, la commande complète étant :

git commit -m <votre_message_de_commit>

Cependant, pour écrire des messages plus complets et pertinents, préférez la


commande git commit qui lancera un éditeur de texte comme Vim, Emacs ou
Nano si vous travaillez dans le terminal.

https://www.commentcoder.com/commandes-git/ 7/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

Si c’est la première fois que vous utilisez Vim et que vous êtes
pris au piège, tels les aventuriers de Jumanji, dans cet éditeur de
texte, pas de panique : J’ai écrit un article pour vous expliquer
comment quitter Vim (et n’oubliez pas de crier “Jumanji”).

git commit les changements

Pour commit les fichiers que vous avez ajoutés avec la commande git add et de
commit également les fichiers que vous avez modifiés depuis.

git commit -a

git diff

Pour afficher les différences de fichiers qui ne sont pas encore staged.

git diff

git diff staged

https://www.commentcoder.com/commandes-git/ 8/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

Pour afficher les différences entre les fichiers dans staging et la version présente.

git diff –staged

git diff deux branches

Voir les différences entre les deux branches mentionnées.

git diff <branche_une> <branche_deux>

git reset

Pour retirer le fichier de staging, mais préserve son contenu.

git reset <fichier>

Parfait pour retirer un ficher staged sans faire exprès et garder


des commit propres : un changement = un commit.

https://www.commentcoder.com/commandes-git/ 9/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

Pour annuler tous les commit après le commit spécifié et préserve les modifications
localement.

git reset commit

git reset <hash_du_commit>

git reset hard

Pour supprimer tout l’historique et revient au commit spécifié.

git reset –hard <hash_du_commit>

git status

Pour lister tous les fichiers qui doivent être commit et leur états : untracked et to be
committed.

git status

https://www.commentcoder.com/commandes-git/ 10/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

git rm
Pour supprimer le fichier de votre répertoire de travail et stage la suppression.

git rm <fichier>

git log
Pour lister l’historique des versions de la branche courante.

git log

Pour lister l’historique des versions d’un fichier, y compris le renommage des
fichiers.

git log –follow <nom_du_fichier>

git show
Pour afficher les métadonnées et les modifications de contenu du commit spécifié.

git show <hash_du_commit>

git tag
Pour donner un tags au commit spécifié.

git tag <hash_du_commit>

https://www.commentcoder.com/commandes-git/ 11/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

git branch

Pour lister toutes les branches locales dans le dépôt actuel.

git branch

Pour créer une nouvelle branche.

git branch <branche>

Pour supprimer une certaine branche.

git branch -d <branche>

git checkout
Pour passer d’une branche à l’autre.

git checkout <branche>

Pour créer une nouvelle branche et switcher directement à celle-ci.

https://www.commentcoder.com/commandes-git/ 12/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

git checkout -b <branche>

Si vous avez bien suivi, c’est l’equivalent de git branch


<nouvelle_branche> suivi de la commande git checkout
<nouvelle_branche>

git merge
Pour fusionner l’historique de la branche spécifiée dans la branche actuelle.

git merge <branche>

git remote
Pour lier votre repo local a votre repo remote.

git remote add <nom_du_remote (origin ou autre)> <lien_du_serveur>

git push

https://www.commentcoder.com/commandes-git/ 13/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

Pour push les changements sur master.

git push <nom_du_remote> master

Pour push les commits à votre dépôt distant sur de la branche spécifiée.

git push <remote> <branche>

Pour pousser toutes les branches vers votre repo remote.

git push –all <remote>

git pull

Pour chercher et merger les modifications d’une branche du serveur git et


l’applique a la branche sur laquelle vous vous trouvez.

git pull <branche>

git stash

https://www.commentcoder.com/commandes-git/ 14/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

Pour stocker temporairement tous les fichiers tracked modifiés.

git stash

ou

git stash save

Utile quand vous voulez mettre votre travail de cote pour revenir
a la branche avant vos modifications temporairement. Par
exemple, quand le commercial vient demander pourquoi ca ne
marche pas, vous pouvez stash vos modifications, lui montrer
que la branche fonctionne bien et puis revenir sur vos
modifications quand vous avez la paix 😇

Pour restaurer les derniers fichiers stashed.

git stash pop

Pour lister tous vos stashes.

git stash list

Pour éliminer le dernier ensemble de modifications stashed.


https://www.commentcoder.com/commandes-git/ 15/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

git stash drop

Tableau récapitulatif des commandes git les


plus utiles
Pour vous y retrouver plus facilement, j’ai compilé les commandes de cet article
dans un tableau :

Commande Git Description

git config –global user.name Modifie le nom d’utilisateur dans votre


<nom> config git

git config –global user.email Modifie l’adresse email dans votre


<mail> configuration git

git init
Initialise un nouveau repo git
<le_nom_de_votre_repo_git>

git init --bare <nom_de_depot> Initialise un repo sans working tree

git clone <url_du_depot_git> Clone un repo git

git add
Ajoute les fichiers spécifiés à l’index
<nom_du_ou_des_fichier(s)>

git add * Ajoute tous les fichiers à l’index

git add --patch * Ouvre le mode interactif de git add

git commit Permet de commit des modifications

git commit -m Permet de commit en donnant un


<message_de_commit> message de commit

https://www.commentcoder.com/commandes-git/ 16/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

Commande Git Description

Add & commit tous les fichiers modifiés


git commit -a
ou supprimés

Montre les modifications dans l’index non


git diff
commitées

git diff -–staged --staged est un synonyme de --cached

Montre les différences entre deux


git diff <branche_1> <branche_2>
branches

git reset <fichier> L’inverse de git add

git reset <hash_du_commit> Retourne au commit choisi

Pareil mais supprime tous les


git reset –hard <hash_du_commit>
changements

git status Affiche les statuts du working tree

Supprime les fichiers du working tree et


git rm <fichier(s)>
de l’index

git log Affiche l’historique des commits

Affiche l’historique des changements du


git log –follow <nom_du_fichier>
fichier

git show <hash_du_commit> Affiche les détails d’un commit

git tag <hash_du_commit> Donne un tag au commit

Liste toutes les branches locales du repo


git branch
actuel

https://www.commentcoder.com/commandes-git/ 17/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

Commande Git Description

git branch <branche> Crée une nouvelle branche

git branch -d <branche> Supprime une certaine branche

git checkout <branche> Permet de changer de branche

Crée une nouvelle branche et passe


git checkout -b <branche>
dessus

git merge <branche> Merge une branche à la branche actuelle

Ajoute un serveur git en lui donnant un


git remote add <nom> <lien_git>
nom remote

git push Push le commit sur git

Push le commit en spécifiant un repo et


git push <remote> <branche>
une branche

Push tous les commits de toutes branches


git push –all <remote>
sur remote

git pull <branche> Pull les derniers commits d’une branche

git stash Met de côté les modifications présentes

git stash save Pareil que git stash mais plus explicite

git stash pop Récupère les fichiers sauvés dans la stash

git stash list Liste les différentes stashes sauvées

Supprime une stash préalablement


git stash drop
sauvée

https://www.commentcoder.com/commandes-git/ 18/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

Aller plus loin avec Git


Git est un outil très complet et vous pourrez continuer a l’apprendre au long de
votre carrière. Il existe aussi des interfaces graphiques (GUI), github a d’ailleurs son
propre client pour gérer vos commit visuellement.

Je vous recommanderais cependant de vous forcer a utiliser git en ligne de


commande au debut pour bien apprendre les commandes par coeur !

APPRENEZ GRATUITEMENT À CODER EN MOINS DE 30 JOURS !

Vous voulez apprendre la programmation ?


Recevez mon ebook GRATUIT : "9 astuces pour
apprendre à coder".
Découvrez si le code est fait pour vous !

Votre adresse email

JE VEUX MES 9 ASTUCES GRATUITES 🤑

Je m'appelle Thomas. J'ai commencé à coder dans mon enfance. Depuis


ma sortie de la première promo de l'École 42, j'ai développé des
centaines d'applications et sites web. Sur ce blog, je vous donne les
meilleurs conseils et astuces pour apprendre comment apprendre à
coder efficacement.

TA B L E D E S M AT I È R E S

git config

git config username

https://www.commentcoder.com/commandes-git/ 19/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

git config email

git init

git init bare

Mais alors a quoi sert git init — bare ?

git clone

git add

git commit

Qu’est ce qu’un commit dans git ?

Comment faire un commit sur git ?

Quelle est la commande git qui permet d’écrire un message de commit ?

git commit les changements

git diff

git diff staged

git diff deux branches

git reset

git reset commit

git reset hard

git status

git rm

git log

git show

git tag

git branch

git checkout

git merge

https://www.commentcoder.com/commandes-git/ 20/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

git remote

git push

git pull

git stash

Tableau récapitulatif des commandes git les plus utiles

Aller plus loin avec Git

https://www.commentcoder.com/commandes-git/ 21/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 22/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 23/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 24/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 25/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 26/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 27/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 28/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 29/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 30/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 31/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 32/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 33/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 34/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 35/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 36/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 37/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 38/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 39/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 40/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

https://www.commentcoder.com/commandes-git/ 41/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

PLAN DU SITE

https://www.commentcoder.com/commandes-git/ 42/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

Comment Coder

Blog

À propos

Note affiliation

Politique de Confidentialité

CATÉGORIES

Python

JavaScript

Créer des Bots

Apprendre à coder

Développer des apps

ARTICLES POPULAIRES

ChatGPT en francais

Les générateurs d'images

La fonction range Python

9 idées de projets Python

Meilleurs Livres Python

RÉSEAUX SOCIAUX

YouTube

Twitch

LinkedIn

Github

Flux RSS

https://www.commentcoder.com/commandes-git/ 43/44
18/08/2023 13:32 19 commandes git indispensables pour les développeurs

©2023 commentcoder.com. Créé avec ❤️par Comment Coder avec Gatsby.js

https://www.commentcoder.com/commandes-git/ 44/44

Vous aimerez peut-être aussi