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.
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »- 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
Installer Git
Section intitulée « Installer Git »Sur les distributions basées sur Debian, installez Git depuis le dépôt officiel PPA pour obtenir la dernière version :
sudo apt updatesudo apt install gitPour obtenir la toute dernière version de Git :
sudo add-apt-repository ppa:git-core/ppasudo apt updatesudo apt install gitsudo dnf install gitSur macOS, Git est souvent préinstallé avec les Xcode Command Line Tools. Vérifiez d’abord s’il est déjà présent :
git --versionS’il n’est pas installé, macOS vous proposera de l’installer. Vous pouvez aussi l’installer via Homebrew pour avoir la dernière version :
brew install gitTéléchargez l’installeur depuis le site officiel : git-scm.com/download/win.
Lancez l’installeur et conservez les options par défaut. L’installation inclut Git Bash, un terminal qui vous permet d’utiliser les mêmes commandes que sur Linux.
Vous pouvez aussi installer Git via winget (Windows Package Manager) :
winget install --id Git.Git -e --source wingetVérifier l’installation
Section intitulée « Vérifier l’installation »Quelle que soit votre plateforme, vérifiez que Git est correctement installé :
git --versionSortie attendue :
git version 2.47.1Comprendre les 3 niveaux de configuration
Section intitulée « Comprendre les 3 niveaux de configuration »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.
| Niveau | Portée | Fichier | Option |
|---|---|---|---|
| System | Tous les utilisateurs de la machine | /etc/gitconfig | --system |
| Global | Votre compte utilisateur | ~/.gitconfig | --global |
| Local | Un 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.
Voir la configuration actuelle
Section intitulée « Voir la configuration actuelle »Pour afficher toute votre configuration et savoir d’où vient chaque valeur :
git config --list --show-originSortie attendue (exemple) :
file:/home/bob/.gitconfig user.name=Stéphane ROBERTfile:/home/bob/.gitconfig user.email=stephane@example.comfile:/home/bob/.gitconfig core.editor=code --waitfile:/home/bob/.gitconfig init.defaultbranch=mainfile:.git/config core.repositoryformatversion=0file:.git/config core.bare=falseL’option --show-origin indique le fichier source de chaque paramètre.
C’est indispensable pour déboguer les conflits de configuration.
Configurer votre identité
Section intitulée « Configurer votre identité »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.
-
Définir votre nom :
Fenêtre de terminal git config --global user.name "Votre Nom" -
Définir votre email :
Fenêtre de terminal git config --global user.email "votre@email.com" -
Vérifier la configuration :
Fenêtre de terminal git config user.namegit config user.emailSortie attendue :
Votre Nomvotre@email.com
Configurer votre éditeur
Section intitulée « Configurer votre éditeur »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é :
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.
git config --global core.editor "nano"git config --global core.editor "vim"Vérification : créez un commit vide pour tester l’ouverture de l’éditeur (vous pourrez annuler en fermant sans sauvegarder) :
git config --global core.editorSortie attendue :
code --waitConfigurer la branche par défaut
Section intitulée « Configurer la branche par défaut »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 :
git config --global init.defaultBranch mainSans 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.
Créer des alias utiles
Section intitulée « Créer des alias utiles »Les alias permettent de créer des raccourcis pour les commandes que vous utilisez le plus souvent. Voici les alias les plus populaires :
git config --global alias.st statusgit config --global alias.co switchgit config --global alias.ci commitgit config --global alias.br branchgit config --global alias.lg "log --oneline --graph --all --decorate"Avec ces alias, vous pouvez taper :
git st # au lieu de git statusgit co main # au lieu de git switch maingit lg # log visuel avec branchesTestez l’alias lg qui est particulièrement utile :
git lgSortie 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 commitConfiguration SSH (recommandée)
Section intitulée « Configuration SSH (recommandée) »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.
-
Vérifier si une clé existe déjà :
Fenêtre de terminal ls -la ~/.ssh/id_ed25519.pubSi le fichier existe, vous avez déjà une clé. Passez à l’étape 3.
-
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é.
-
Copier la clé publique :
Fenêtre de terminal cat ~/.ssh/id_ed25519.pubCopiez 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).
-
Tester la connexion :
Fenêtre de terminal ssh -T git@github.comSortie attendue :
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
Résumé de la configuration recommandée
Section intitulée « Résumé de la configuration recommandée »Voici l’ensemble des commandes de configuration en une seule séquence :
# Identitégit config --global user.name "Votre Nom"git config --global user.email "votre@email.com"
# Éditeurgit config --global core.editor "code --wait"
# Branche par défautgit config --global init.defaultBranch main
# Alias utilesgit config --global alias.st statusgit config --global alias.co switchgit config --global alias.ci commitgit config --global alias.br branchgit config --global alias.lg "log --oneline --graph --all --decorate"Dépannage : problèmes courants
Section intitulée « Dépannage : problèmes courants »| Symptôme | Cause probable | Solution |
|---|---|---|
git: command not found | Git n’est pas installé ou pas dans le PATH | Réinstaller Git. Sur Linux, vérifier avec which git |
| Commits avec le mauvais email | user.email pas configuré ou mal configuré au bon niveau | git config --global user.email "bon@email.com" |
| L’éditeur ne s’ouvre pas au commit | core.editor pas configuré ou l’éditeur n’est pas dans le PATH | Vérifier que l’éditeur est accessible en ligne de commande |
permission denied (publickey) au push | Clé SSH pas configurée ou pas ajoutée à la plateforme | Vérifier avec ssh -T git@github.com et ajouter la clé |
| Config locale écrase la config globale | Normal : le niveau local a priorité sur global | Utiliser git config --list --show-origin pour comprendre d’où vient la valeur |
À retenir
Section intitulée « À retenir »- 3 niveaux de configuration : system (machine) → global (utilisateur) → local (dépôt). Le plus spécifique gagne.
- Identité obligatoire : configurez
user.nameetuser.emailavant votre premier commit. - Éditeur recommandé : configurez
core.editorpour éviter de vous retrouver coincé dansvi. - Branche par défaut : utilisez
mainavecinit.defaultBranch. - SSH recommandé : évite de taper son mot de passe à chaque push/pull.
- Alias :
git lg(log graphique) etgit st(status) font gagner du temps au quotidien.