
🚀 Git pour débutants : premier guide pour travailler avec GitHub
Vous avez écrit du code, mais vous avez peur de casser la version qui fonctionne. Ou vous travaillez en équipe et perdez la trace de qui a modifié quoi et quand. Ou peut-être souhaitez-vous simplement revenir en arrière après une expérimentation ratée, avec une seule commande.
Tout cela est résolu par Git, un système de contrôle de version dont aucun projet moderne ne peut se passer. Mais la barrière à l'entrée en effraie plus d'un: terminal, clés SSH, branches, pull requests.
En réalité, le flux de travail de base s'apprend en une heure. Ce guide porte exactement sur cela: de l'installation à votre premier push, sans superflu ni théorie inutile.
💡 Aperçu rapide:
- Installer Git pour votre système d'exploitation et définir votre nom d'utilisateur avec une commande
- Générer une clé SSH Ed25519 et la lier à votre compte GitHub
- Créer un dépôt, le lier à un dossier local et effectuer votre premier push
- Cloner un dépôt existant via HTTPS ou SSH pour travailler en local
- Maîtriser les commandes modernes git switch et git restore au lieu de git checkout
1. Installation de Git
Git fonctionne sur Windows, macOS et Linux. La méthode la plus fiable consiste à télécharger l'installateur depuis le site officiel git-scm.com.
Pour Windows, téléchargez la version 64 bits. Pendant l'installation, l'assistant vous proposera de choisir un éditeur par défaut, une stratégie de gestion des fins de ligne et un terminal. Pour un débutant, les valeurs par défaut conviennent parfaitement, à l'exception de l'éditeur: au lieu de Vim, il est plus pratique de choisir Nano ou VS Code.
Un guide détaillé pour installer Git sur Windows (avec des captures d'écran de chaque étape de l'assistant) est déjà disponible sur notre blog: comment installer Git sur Windows.
Vérifiez que Git est correctement installé:
1 git --version
Si le terminal affiche une version (par exemple, git version 2.48.0), l'installation a réussi.
2. Configuration initiale de Git
Avant votre premier commit, Git a besoin de se présenter. Le nom et l'email apparaîtront dans l'historique de chaque modification, permettant à vos collègues de comprendre qui est l'auteur de la modification.
1 git config --global user.name "Your Name" 2 git config --global user.email "[email protected]"
L'option --global enregistre les paramètres de manière globale, ils seront pris en compte pour tous les dépôts sur la machine. Si un projet spécifique nécessite des données différentes, répétez la commande sans --global en vous trouvant dans le dossier du projet.
Deux autres options utiles:
1 git config --global core.editor "code --wait" # editor for commit messages 2 git config --global init.defaultBranch main # default branch is main, not master
Depuis 2020, GitHub crée les dépôts avec une branche main au lieu de master. La ligne init.defaultBranch main synchronise votre installation locale avec ce standard, évitant ainsi toute confusion future.
Vérifiez tout en une seule fois:
1 git config --list
3. Clé SSH et connexion à GitHub
GitHub a désactivé la prise en charge du mot de passe pour les opérations Git en 2021. La norme actuelle repose sur les clés SSH, et l'algorithme recommandé est Ed25519 (plus compact et plus sûr que le RSA, désormais obsolète).
Générez une clé:
1 ssh-keygen -t ed25519 -C "[email protected]"
Appuyez trois fois sur Entrée: une phrase de passe vide est acceptable pour le développement local. Le terminal affichera l'empreinte digitale et le chemin vers la clé:

Copiez maintenant la clé publique dans le presse-papiers. La commande dépend du système d'exploitation:
macOS:
1 pbcopy < ~/.ssh/id_ed25519.pub
Linux (Ubuntu):
1 cat ~/.ssh/id_ed25519.pub
Windows (Git Bash):
1 clip < ~/.ssh/id_ed25519.pub
Il ne reste plus qu'à ajouter la clé à GitHub. Connectez-vous à votre compte, cliquez sur votre avatar dans le coin supérieur droit et sélectionnez Settings:

Dans la barre latérale, accédez à l'onglet SSH and GPG keys:

Cliquez sur le bouton vert New SSH Key. Dans le champ Title, donnez un nom explicite à la clé (par exemple, «Asus Laptop»), dans le champ Key collez le contenu du presse-papiers et cliquez sur Add SSH Key.
Vérifiez la connexion:
1 ssh -T [email protected]
Une réponse Hi username! You've successfully authenticated... signifie que tout est correctement configuré.
4. Créer un dépôt et effectuer une première synchronisation
Sur github.com/new, créez un nouveau dépôt: donnez-lui un nom, laissez-le en Public ou choisissez Privé, et ne cochez PAS «Add a README file» (sinon, un conflit surviendra lors du premier push).
Dans le terminal, placez-vous dans le dossier du projet et exécutez la séquence suivante:
1 git init # Git initialization in folder 2 git add . # index all files 3 git commit -m "First commit" # fix state
Liez le dossier local au dépôt distant et poussez les modifications:
1 git remote add origin [email protected]:yourname/yourproject.git 2 git push -u origin main
L'option -u mémorise la liaison «branche locale → distante». La prochaine fois, un simple git push suffira.
N'oubliez pas le .gitignore, qui liste les fichiers à ne pas versionner (logs, fichiers temporaires de l'IDE, dossiers de dépendances comme node_modules/). Des modèles prêts à l'emploi pour toutes les stacks sont disponibles sur gitignore.io.
5. Cloner un dépôt
Le clonage consiste à télécharger le dépôt de quelqu'un d'autre (ou le vôtre, mais depuis GitHub) sur une machine locale avec l'historique complet des modifications.
Sur la page du dépôt, cliquez sur le bouton vert Code:

Une fenêtre avec trois options s'ouvrira. Choisissez SSH (si vous avez configuré une clé à l'étape 3) ou HTTPS:

Copiez l'URL et exécutez dans le terminal:
1 git clone [email protected]:username/repository.git
Git créera un dossier portant le nom du dépôt et y téléchargera tous les fichiers ainsi que l'historique. Une fois le clonage terminé, vous pouvez commencer à travailler immédiatement.
Pour la navigation quotidienne entre les branches, utilisez les commandes modernes:
1 git switch feature-branch # switch to existing branch 2 git switch -c new-feature # create new branch and switch 3 git restore file.txt # roll back changes in file
Elles ont remplacé la commande git checkout, devenue trop polyvalente, à partir de Git 2.23 et sont depuis devenues la norme. git checkout n'a pas disparu, mais switch et restore sont plus sûrs et plus intuitifs.
Si vous préférez une interface graphique, GitHub Desktop permet de gérer visuellement le clonage, les commits et les branches sans passer par le terminal.
Vidéo: cours complet sur Git et GitHub en 2 heures
Pour consolider ces notions, regardez un tutoriel vidéo complet en anglais, qui couvre tout, de l'installation aux scénarios avancés de collaboration en équipe:
⁉️🤔 Foire aux questions
Quelle est la différence entre Git et GitHub?
Git est un logiciel de gestion de versions qui s’exécute sur votre machine. GitHub est un service web qui héberge des dépôts Git dans le cloud et y ajoute des outils collaboratifs: pull requests, revue de code, tickets. Les alternatives sont GitLab et Bitbucket. Git peut tout à fait fonctionner sans GitHub, mais GitHub ne peut pas exister sans Git.
Dois-je apprendre la ligne de commande si GitHub Desktop existe?
GitHub Desktop couvre la plupart des tâches quotidiennes, mais le terminal donne un contrôle total. Des commandes comme
git rebase,git stashetgit cherry-pickne sont pas toujours évidentes dans l’interface graphique. Les scénarios CI/CD, serveurs et DevOps ne fonctionnent qu’en ligne de commande. Notre conseil: commencez par Desktop et apprenez la ligne de commande en parallèle, 2 à 3 commandes à la fois.
Puis-je renommer la branche master en main dans un projet existant?
Oui, et c’est une pratique standard. Exécutez:
git branch -m master main, puisgit push -u origin mainetgit push origin --delete master. Ensuite, dans les paramètres du dépôt sur GitHub, changez la branche par défaut pour main.
Que faire si Git refuse un push avec l’erreur «failed to push some refs»?
La raison est presque toujours que le dépôt distant contient des commits que vous n’avez pas en local. Faites d’abord
git pull --rebase origin main, résolvez les conflits s’il y en a, puis relancezgit push. L’option--rebaseplace vos commits au-dessus de ceux du distant, ce qui garde un historique linéaire.
Comment annuler le dernier commit qui n’a pas encore été poussé sur GitHub?
git reset --soft HEAD~1: le commit disparaît, mais les modifications restent dans l’index (staged). Vous pouvez corriger et recommiter. Si vous n’avez pas du tout besoin des modifications, utilisezgit reset --hard HEAD~1, mais soyez prudent: le reset hard supprime les fichiers de manière irréversible.
Et maintenant: votre premier workflow
Le tableau d’ensemble après ce guide: Git est installé, la clé SSH est reliée, le dépôt est créé et synchronisé. Vous êtes passé de zéro à un environnement prêt à l’emploi.
La suite, c’est la pratique. Commencez modestement: faites trois commits significatifs sur un projet de test, créez une branche avec git switch -c, ajoutez un fichier et ouvrez une pull request pour fusionner dans main. Ce cycle exact (commit → branche → PR → merge) se répète chaque jour dans n’importe quelle équipe.
Et quand vous serez à l’aise, revenez vers nous pour les sujets avancés: git rebase, le stash interactif, la résolution de conflits de fusion et la mise en place de CI/CD avec GitHub Actions.



