Parcours 0 — Avant de commencer · leçon gratuite · 12 min

Git et GitHub : ne plus jamais perdre son travail

Git est une machine à remonter le temps pour tes fichiers. GitHub est l’endroit où on range et partage cette histoire.

Objectifs

  • Expliquer ce que Git sauvegarde et comment (les commits)
  • Distinguer Git (l’outil) et GitHub (le service)
  • Comprendre pourquoi on fait un commit avant chaque grosse demande à Claude Code

Git est un programme qui prend des photos de ton dossier de projet, quand tu le lui demandes. Chaque photo s'appelle un commit et porte un message (« ajout de la page contact »). Git conserve toutes les photos : tu peux revenir à n'importe laquelle, comparer deux états, voir qui a changé quoi. C'est une machine à remonter le temps, limitée à un dossier : le dépôt (repository, repo).

GitHub est un site web qui héberge des dépôts Git. Tu y envoies tes commits (push) pour les sauvegarder ailleurs que sur ton disque, pour les partager, et pour permettre à des services (comme les hébergeurs) de récupérer ton code. Il existe des concurrents (GitLab, Bitbucket) ; Git fonctionne pareil avec tous.

Git = l'outil, sur ta machine. GitHub = un service en ligne, optionnel mais quasi universel.

Pourquoi c'est vital avec une IA qui écrit du code : Claude Code va modifier des dizaines de fichiers. Si tu as fait un commit juste avant, tu peux tout annuler d'un coup si le résultat ne te plaît pas. Sans commit, tu répares à la main. Un commit avant chaque grosse demande : c'est le réflexe n°1 de la formation.

Git range ses photos dans un dossier caché .git à la racine du projet. Il ne stocke pas des copies complètes : il enregistre les différences (le diff) entre deux versions, et sait reconstruire n'importe quel état à partir de là. Un commit est identifié par un long code (a3f9c2e…) et pointe vers son parent : l'historique est une chaîne, et parfois un arbre quand on crée des branches (des lignes de travail parallèles, par exemple pour tester une idée sans toucher à la version qui marche).

Le trio de commandes que tu apprendras au parcours 11 : git add (choisir ce qui entre dans la photo), git commit (prendre la photo), git push (l'envoyer sur GitHub). Tout le reste est du confort.

$ git log --oneline
e41b7c2 corrige le bouton Commander sur mobile
9d0a11f ajoute la page contact et le formulaire
5c8f3aa mise en page responsive
1a2b3c4 premier commit : structure du site

Quatre photos. Si Claude Code casse le bouton en travaillant sur autre chose, git diff montre exactement ce qui a changé depuis e41b7c2, et git restore remet le fichier comme sur la photo.

Claude Code prend lui-même des instantanés de ses modifications (les checkpoints, restaurables avec /rewind ou Esc Esc). C'est pratique pour annuler sa dernière action, mais ça ne remplace pas Git : les checkpoints ne couvrent que les fichiers modifiés par ses outils d'édition, pas les commandes shell, et ils disparaissent au bout d'un mois. Git est ta vraie sauvegarde. Claude Code sait d'ailleurs faire les commits pour toi, avec un message correct, si tu le lui demandes.

À retenir

  • Git prend des photos (commits) de ton projet ; tu peux revenir à n’importe laquelle.
  • GitHub héberge et partage ces dépôts. Git marche sans GitHub ; l’inverse non.
  • Un commit avant chaque grosse demande à Claude Code = un bouton « annuler » garanti.
  • Les checkpoints de Claude Code sont un filet de sécurité de session, pas une sauvegarde.