Aller au contenu
Développement medium
🔐 Alerte sécurité — Incident supply chain Trivy : lire mon analyse de l'attaque

Installer et configurer Git sur Linux, macOS et Windows

11 min de lecture

Ce guide vous accompagne de l’installation de Git jusqu’à sa configuration complète. En 10 minutes, vous aurez un Git fonctionnel avec votre identité configurée, votre éditeur préféré associé et quelques alias pour gagner du temps au quotidien.

Prérequis : avoir compris le modèle Git (snapshots, 3 états). Aucun logiciel préalable n’est requis.

  • Installer Git sur Linux, macOS et Windows
  • Configurer votre identité (nom et email associés à vos commits)
  • Choisir votre éditeur pour les messages de commit
  • Comprendre les 3 niveaux de configuration (système, global, local)
  • Créer des alias pour les commandes les plus fréquentes

Sur les distributions basées sur Debian, installez Git depuis le dépôt officiel PPA pour obtenir la dernière version :

Fenêtre de terminal
sudo apt update
sudo apt install git

Pour obtenir la toute dernière version de Git :

Fenêtre de terminal
sudo add-apt-repository ppa:git-core/ppa
sudo apt update
sudo apt install git

Quelle que soit votre plateforme, vérifiez que Git est correctement installé :

Fenêtre de terminal
git --version

Sortie attendue :

git version 2.47.1

Git utilise un système de configuration à 3 niveaux, du plus large au plus spécifique. Chaque niveau peut écraser les valeurs du niveau précédent.

NiveauPortéeFichierOption
SystemTous les utilisateurs de la machine/etc/gitconfig--system
GlobalVotre compte utilisateur~/.gitconfig--global
LocalUn seul dépôt.git/config--local

En pratique, vous utiliserez principalement --global pour vos paramètres personnels et --local pour les exceptions spécifiques à un projet.

Pour afficher toute votre configuration et savoir d’où vient chaque valeur :

Fenêtre de terminal
git config --list --show-origin

Sortie attendue (exemple) :

file:/home/bob/.gitconfig user.name=Stéphane ROBERT
file:/home/bob/.gitconfig user.email=stephane@example.com
file:/home/bob/.gitconfig core.editor=code --wait
file:/home/bob/.gitconfig init.defaultbranch=main
file:.git/config core.repositoryformatversion=0
file:.git/config core.bare=false

L’option --show-origin indique le fichier source de chaque paramètre. C’est indispensable pour déboguer les conflits de configuration.

La première chose à faire après l’installation est de configurer votre nom et votre email. Ces informations sont inscrites dans chaque commit que vous créez. Elles ne sont pas modifiables après coup.

  1. Définir votre nom :

    Fenêtre de terminal
    git config --global user.name "Votre Nom"
  2. Définir votre email :

    Fenêtre de terminal
    git config --global user.email "votre@email.com"
  3. Vérifier la configuration :

    Fenêtre de terminal
    git config user.name
    git config user.email

    Sortie attendue :

    Votre Nom
    votre@email.com

Quand Git a besoin que vous écriviez un message (commit, merge, rebase), il ouvre un éditeur de texte. Par défaut, c’est souvent vi ou nano. Pour utiliser votre éditeur préféré :

Fenêtre de terminal
git config --global core.editor "code --wait"

L’option --wait indique à Git d’attendre que vous fermiez l’onglet dans VS Code avant de continuer.

Vérification : créez un commit vide pour tester l’ouverture de l’éditeur (vous pourrez annuler en fermant sans sauvegarder) :

Fenêtre de terminal
git config --global core.editor

Sortie attendue :

code --wait

Depuis Git 2.28, vous pouvez définir le nom de la branche créée par git init. La convention moderne est d’utiliser main :

Fenêtre de terminal
git config --global init.defaultBranch main

Sans cette configuration, Git crée une branche nommée master. Les deux noms sont fonctionnellement identiques, mais main est devenu le standard sur GitHub, GitLab et la plupart des projets récents.

Les alias permettent de créer des raccourcis pour les commandes que vous utilisez le plus souvent. Voici les alias les plus populaires :

Fenêtre de terminal
git config --global alias.st status
git config --global alias.co switch
git config --global alias.ci commit
git config --global alias.br branch
git config --global alias.lg "log --oneline --graph --all --decorate"

Avec ces alias, vous pouvez taper :

Fenêtre de terminal
git st # au lieu de git status
git co main # au lieu de git switch main
git lg # log visuel avec branches

Testez l’alias lg qui est particulièrement utile :

Fenêtre de terminal
git lg

Sortie attendue (dans un dépôt avec quelques commits) :

* e4a1c0f (HEAD -> main) Ajout de la page de contact
* a3b7d2e Création de la structure du projet
* 1f2d3e4 Initial commit

Pour éviter de taper votre mot de passe à chaque push et pull, configurez une clé SSH. C’est la méthode recommandée pour se connecter à GitHub, GitLab et autres services Git.

  1. Vérifier si une clé existe déjà :

    Fenêtre de terminal
    ls -la ~/.ssh/id_ed25519.pub

    Si le fichier existe, vous avez déjà une clé. Passez à l’étape 3.

  2. Générer une nouvelle clé (si nécessaire) :

    Fenêtre de terminal
    ssh-keygen -t ed25519 -C "votre@email.com"

    Appuyez sur Entrée pour accepter l’emplacement par défaut. Choisissez une passphrase pour protéger votre clé.

  3. Copier la clé publique :

    Fenêtre de terminal
    cat ~/.ssh/id_ed25519.pub

    Copiez la sortie complète et ajoutez-la dans les paramètres SSH de votre service Git (GitHub : Settings → SSH and GPG keys → New SSH key).

  4. Tester la connexion :

    Fenêtre de terminal
    ssh -T git@github.com

    Sortie attendue :

    Hi username! You've successfully authenticated, but GitHub does not provide shell access.

Voici l’ensemble des commandes de configuration en une seule séquence :

Fenêtre de terminal
# Identité
git config --global user.name "Votre Nom"
git config --global user.email "votre@email.com"
# Éditeur
git config --global core.editor "code --wait"
# Branche par défaut
git config --global init.defaultBranch main
# Alias utiles
git config --global alias.st status
git config --global alias.co switch
git config --global alias.ci commit
git config --global alias.br branch
git config --global alias.lg "log --oneline --graph --all --decorate"
SymptômeCause probableSolution
git: command not foundGit n’est pas installé ou pas dans le PATHRéinstaller Git. Sur Linux, vérifier avec which git
Commits avec le mauvais emailuser.email pas configuré ou mal configuré au bon niveaugit config --global user.email "bon@email.com"
L’éditeur ne s’ouvre pas au commitcore.editor pas configuré ou l’éditeur n’est pas dans le PATHVérifier que l’éditeur est accessible en ligne de commande
permission denied (publickey) au pushClé SSH pas configurée ou pas ajoutée à la plateformeVérifier avec ssh -T git@github.com et ajouter la clé
Config locale écrase la config globaleNormal : le niveau local a priorité sur globalUtiliser git config --list --show-origin pour comprendre d’où vient la valeur
  • 3 niveaux de configuration : system (machine) → global (utilisateur) → local (dépôt). Le plus spécifique gagne.
  • Identité obligatoire : configurez user.name et user.email avant votre premier commit.
  • Éditeur recommandé : configurez core.editor pour éviter de vous retrouver coincé dans vi.
  • Branche par défaut : utilisez main avec init.defaultBranch.
  • SSH recommandé : évite de taper son mot de passe à chaque push/pull.
  • Alias : git lg (log graphique) et git st (status) font gagner du temps au quotidien.

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn