Exemples de commandes git de base


Pour 'cloner'/télécharger un dépot git en local il faut simplement utiliser la commande git clone <l'url du dépôt>

Exemple :

git clone https://github.com/GhostPack/PSPKIAudit
Lien vers le fichier : cliquez ici Copier le code

Avant on avait pour habitude d'ajouter .git à la fin de l'url mais ce n'est pas une obligation.
Exemple : git clone https://github.com/GhostPack/PSPKIAudit.git

Dans le même esprit que git clone, git pull lui est utilisé pour mettre à jour un dépôt local déjà cloné.
Pour l'utiliser, il faut se placer dans le répertoire du projet et faire

git pull
Lien vers le fichier : cliquez ici Copier le code

D:\test\aeff>dir
 Directory of D:\test\aeff

         ..
20/03/2026  19:52    

         PSPKIAudit
               0 File(s)              0 bytes
               3 Dir(s)  579 385 393 152 bytes free

 

D:\test\aeff>cd PSPKIAudit

D:\test\aeff\PSPKIAudit>git pull
Already up to date.

 

En gros faire un git pull c'est comme si on demandait à récupérer le code de la branche et de le merger avec nos modifications s'il y en a eu.

Un dépot peut avoir des 'branches', des versions. Pour lister les 'branches' du dépôt distant, faire

git branch -r
Lien vers le fichier : cliquez ici Copier le code
Publicité

Par exemple on voit ici que le depôt Domoticz-deCONZ a 4 versions

D:\test\aeff\Domoticz-deCONZ>git branch -r
  origin/HEAD -> origin/master
  origin/beta
  origin/extended
  origin/master

Pour changer de branch, on peut utiliser checkout. Par exemple pour basculer sur la version beta faire

git checkout beta
Lien vers le fichier : cliquez ici Copier le code

D:\test\aeff\Domoticz-deCONZ>git checkout beta
Switched to branch 'beta'
Your branch is up to date with 'origin/beta'.

Après un changement de branch localement, vous n'êtes pas forcément à jour avec le dépôt distant. Vous avez alors 2 options

Commande Utilité
git pull récupère les modifications distantes ET les fusionne avec votre branche locale (équivalent de git fetch + git merge de la branch suivie)
git fetch récupère les informations distantes mais ne modifie pas votre code local

Après un git checkout beta, un git fetch met à jour les références distantes sans modifier le code local. Pour voir les différences entre la branche distante 'beta' et la locale, on peut faire

git diff --stat origin/beta
Lien vers le fichier : cliquez ici Copier le code

Vous avez aussi la commande git status. Elle montre si la branche est synchro en terme de commits. Elle montre aussi, localement, les fichiers modifiés, supprimés ou non trackés

git status
Lien vers le fichier : cliquez ici Copier le code

Exemple de commande git status qui montre qu'on est synchro avec la branche master, que le fichier README.md a été modifié localement mais qu'il n'est pour l'instant pas pris en compte pour le prochain commit

D:\test\aeff\Domoticz-deCONZ>git status
On branch master
Your branch is up to date with 'origin/master'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   README.md

no changes added to commit (use "git add" and/or "git commit -a")

Pour prendre en compte une modification sur un fichier local, il faut l'indiquer avec git add

Exemple :

git add README.md
Lien vers le fichier : cliquez ici Copier le code

Une nouvelle exécution de git status montrera alors que la modification du fichier sera prise en compte lors du prochain commit

Exemple :

D:\test\aeff\Domoticz-deCONZ>git status
On branch master
Your branch is up to date with 'origin/master'.

Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        modified:   README.md

Notez que git supporte le joker *, donc on pourrait tout ajouter avec

git add *
Lien vers le fichier : cliquez ici Copier le code

Inversement pour tout retirer on peut faire

git reset *
Lien vers le fichier : cliquez ici Copier le code

Une fois un ou des fichiers modifiés et pris en compte avec git add, si vous voulez pousser les modifications sur un dépôt sur lequel vous avez les droits, il faut 'commiter' avec un message décrivant les changements.

Exemple

git commit -m "Modification de README.md"
Lien vers le fichier : cliquez ici Copier le code

Envoyez vers votre git vos modifications (vos commits) avec git push.

git push -u origin main envoie tous les commits locaux de la branche main vers origin/main et définit cette branche distante main comme branche de suivi (upstream).

git push -u origin main
Lien vers le fichier : cliquez ici Copier le code

Imaginons que vous avez votre propre serveur / dépôt git et que vous voulez y pousser du code que vous avez déjà développé localement. Dans ce cas, depuis le répertoire où vous avez votre code, initialiser le dépôt Git avec

git init
Lien vers le fichier : cliquez ici Copier le code

Pointer sur votre dépôt créé pour l'occasion avec git remote add

git remote add https://github.com/Login/mon_projet
Lien vers le fichier : cliquez ici Copier le code

Sur votre serveur git, au niveau de votre projet, déclarer un token

Pour le role donner au moins Maintainer ou Owner sinon vous ne pourrez pas pousser sur la branch main

Pour les scopes, donner au moins read_repository et write_repository

Côté client déclarer le token en adaptant cette commande

git remote set-url origin https://votre_username:votre_token@github.com/Login/mon_projet.git
Lien vers le fichier : cliquez ici Copier le code

S'assurer qu'on est sur la branch main avec

git checkout main
Lien vers le fichier : cliquez ici Copier le code

Récupérer les informations du dépôt distant avec

git fetch origin
Lien vers le fichier : cliquez ici Copier le code

Vous pouvez ajouter tous vos fichiers et répertoires d'un coup avec

git add .
Lien vers le fichier : cliquez ici Copier le code

Faire un git commit

git commit -m "Première version"
Lien vers le fichier : cliquez ici Copier le code

Pousser le code dans la branch main avec

git push -u origin main
Lien vers le fichier : cliquez ici Copier le code

Notez que vous pouvez mettre en place des exclusions, pour cela il faut faire un fichier .gitignore

Sous linux cela se crée facilement avec

nano .gitignore
Lien vers le fichier : cliquez ici Copier le code

Vous pouvez exclure des fichiers comme des répertoires. Exemple :

# Fichiers sensibles
.env
.env.*
config.php
wp-config.php

# Dépendances
node_modules/
vendor/

# Logs
*.log
logs/

# Fichiers temporaires
*.tmp
*.bak
*.swp
.DS_Store

# Uploads
uploads/
files/
storage/

# Cache
cache/
.tmp/
Lien vers le fichier : cliquez ici Copier le code

Pour les droits

chmod 644 .gitignore
Lien vers le fichier : cliquez ici Copier le code

A la racine de votre site, pensez à protéger tous les fichier qui commencent par un point comme
.git
.gitignore
.env
.htpasswd

Avec cette règle simple

# Protection fichiers cachés
RewriteRule "(^|/)\." - [F]
Lien vers le fichier : cliquez ici Copier le code

Si vous avez mis en place .gitignore après avoir fait un git add .
alors le .gitignore n'a pas été pris en compte.
Le plus simple pour corriger, c'est de faire un git rm -r --cached .
qui va supprimer le tracking de tous les fichiers (supprime tout de l’index Git) pour ensuite tout réajouter en prenant en compte .gitignore

git rm -r --cached .
git add .
Lien vers le fichier : cliquez ici Copier le code

Ne reste plus qu'à faire un git commit

git commit -m "Ma modification"
Lien vers le fichier : cliquez ici Copier le code

Voilà, vous avez poussé votre code sur git dans la branch main et vous voulez commencer à bosser sur une évolution qu'on va appeler V2.
Pour cela on peut faire une nouvelle branche nommée V2.

On va commencer par s'assurer qu'on est bien sur la branche main et qu'on est à jour

git checkout main
git pull origin main
Lien vers le fichier : cliquez ici Copier le code

Maintenant on va créer et basculer sur notre nouvelle branche nommée v2
Le -b veut dire "branch" pour créer une branche

git checkout -b v2
Lien vers le fichier : cliquez ici Copier le code

Faites vos modifications et prenez les en compte avec

git add .
Lien vers le fichier : cliquez ici Copier le code

Faire un commit

git commit -m "v2"
Lien vers le fichier : cliquez ici Copier le code

Faire un pull sur la branch v2

git pull origin v2
Lien vers le fichier : cliquez ici Copier le code

De là vous pourrez par exemple sur la page de votre git faire une comparaison du code entre les 2 versions

Publicité