Git et GitHub arrivent souvent en même temps dans la vie d'un débutant. Un tutoriel, ou l'IA qui vous aide à créer votre site, vous demande de « faire un commit » puis d'« envoyer le code sur GitHub », et les deux noms se ressemblent tellement qu'on les prend pour un seul outil.
Cette confusion a des conséquences très pratiques : vous ne savez pas quoi installer, si un compte en ligne est obligatoire, ni si votre travail est vraiment à l'abri une fois la commande tapée. Entre Git et GitHub, la différence tient pourtant en peu de mots, et elle répond à ces trois questions d'un coup.
Git est un logiciel gratuit, installé sur votre ordinateur, qui enregistre l'historique de vos fichiers et fonctionne sans Internet. GitHub est un service en ligne qui garde une copie de ces projets Git et permet de les partager ou d'y travailler à plusieurs. GitLab joue le même rôle que GitHub : pour débuter, il vous faut Git, et un compte gratuit sur l'un des deux seulement si vous voulez une copie en ligne.
Ce que veut dire « gérer les versions » d'un projet
Git appartient à une famille d'outils dont le nom fait peur mais dont l'idée est simple : la gestion de version. La documentation officielle de Git la définit comme un système « qui enregistre l'évolution d'un fichier ou d'un ensemble de fichiers au cours du temps », de façon à pouvoir revenir à une version antérieure à tout moment. Elle précise aussi que cela marche avec pratiquement tous les types de fichiers, pas seulement avec du code.
Sans un tel outil, beaucoup finissent avec un dossier rempli de copies nommées « site-final », « site-final-v2 » puis « site-final-vraiment », sans plus savoir laquelle contient la bonne modification. La gestion de version remplace ce bricolage par un historique propre, rangé à un seul endroit.
Deux mots reviennent sans cesse dans cet historique. Un dépôt est le dossier de votre projet dont Git suit les changements : il contient vos fichiers et toute l'histoire de leurs modifications. Un commit est une version enregistrée de ces fichiers à un moment précis, accompagnée d'une courte phrase qui dit ce qui a changé. L'historique d'un projet n'est rien d'autre que la suite de ses commits, et c'est en remontant cette suite que vous retrouvez une ancienne version.
Git : le logiciel qui garde l'historique sur votre ordinateur
Git est le programme qui fait tout ce travail d'enregistrement. Il est gratuit et open source, ce qui veut dire que son code est public et que n'importe qui peut l'utiliser sans payer. Il a été créé en 2005 par la communauté qui développe Linux, et en particulier par Linus Torvalds, comme le raconte l'histoire de Git publiée sur son site officiel.

Git s'installe sur votre ordinateur et travaille directement dans le dossier de votre projet. Il ne demande ni compte, ni abonnement, ni connexion : la documentation de GitHub rappelle que ce type d'outil n'a « pas besoin d'une connexion constante à un dépôt central ». Vous pouvez donc enregistrer des versions dans le train ou en avion, puis continuer à travailler sans rien perdre.
Chaque copie d'un projet Git contient aussi l'historique complet, et pas seulement la dernière version des fichiers. Si vous copiez votre dépôt sur un autre ordinateur, vous emportez toutes ses versions passées avec lui.
Un logiciel sans fenêtre, piloté par des commandes
Après l'installation, vous ne verrez pas d'icône Git à ouvrir, ce qui a de quoi dérouter. Git s'utilise d'abord dans le terminal, l'application de votre ordinateur où l'on tape des instructions sous forme de texte au lieu de cliquer sur des boutons. Sur Mac, elle s'appelle tout simplement Terminal.
« La commande git », c'est donc le mot git que vous tapez au début de chaque instruction, suivi de l'action voulue. Par exemple, git status demande à Git l'état de vos fichiers, et git commit lui demande d'enregistrer une version.
Les commandes Git de base
Quatre commandes suffisent pour suivre un projet sur votre propre ordinateur :
git initmet un dossier existant sous la surveillance de Git, en y ajoutant un sous-dossier caché où Git range l'historique ;git statusaffiche les fichiers nouveaux, modifiés ou prêts à être enregistrés ;git addchoisit les modifications qui feront partie de la prochaine version ;git commitenregistre cette version dans l'historique du projet.
Le passage par git add avant git commit surprend au début, mais il vous laisse choisir ce que contient chaque version. Pour retrouver une ancienne version, git log affiche la liste de vos commits, du plus récent au plus ancien, avec leur date et leur message. Tout cela reste sur votre ordinateur, et c'est là qu'intervient GitHub.
GitHub : le service en ligne qui garde une copie de vos dépôts
GitHub n'est pas un logiciel à installer mais un site web, sur lequel vous créez un compte. Votre dépôt y est conservé sur les ordinateurs de l'entreprise GitHub, qui restent allumés et reliés à Internet en permanence : c'est ce qu'on appelle « le cloud ». La présentation officielle de GitHub le résume en une phrase :
« GitHub s'appuie sur Git en hébergeant vos projets Git, appelés dépôts, dans le cloud, ainsi qu'en ajoutant des outils de planification et de collaboration qui facilitent la collaboration des équipes. »
Documentation de GitHub
GitHub repose donc sur Git, et pas l'inverse. Git fait l'enregistrement des versions ; GitHub ajoute une copie en ligne de votre dépôt, une page web pour la consulter, et des outils pour travailler à plusieurs. Parmi ces outils, les issues servent à noter des tâches ou à signaler un problème, et les pull requests permettent de proposer une modification que d'autres relisent avant de l'intégrer. GitHub sait aussi publier un site à partir d'un dépôt, ce que permet GitHub Pages pour mettre votre premier site en ligne.

L'entreprise GitHub n'a rien à voir avec les créateurs de Git : elle appartient à Microsoft, qui a annoncé son rachat en 2018. Git, lui, reste un logiciel libre et gratuit, indépendant de GitHub.
Pour un débutant, la question du prix se règle vite. L'offre gratuite de GitHub comprend un nombre illimité de dépôts publics et privés. Un dépôt public est visible par tout le monde sur Internet, alors qu'un dépôt privé n'est visible que par vous et les personnes que vous invitez. La même offre inclut 2 000 minutes par mois d'automatisation, c'est-à-dire du temps de calcul offert pour lancer des tâches automatiques à chaque modification, comme des vérifications ou la mise en ligne d'un site. Pour les dépôts publics, GitHub indique que cette automatisation est gratuite. Les offres payantes visent surtout les équipes et les entreprises.
Le contenu des offres gratuites change de temps en temps. Avant de choisir, relisez la page des tarifs du service pour connaître ses limites du moment.
Comment Git et GitHub travaillent ensemble
Une fois les deux en place, votre projet existe à deux endroits : la copie locale, sur votre ordinateur, et la copie distante, sur GitHub. Git fait circuler les versions entre les deux grâce à trois autres commandes :
git pushenvoie vers GitHub les commits que vous avez faits sur votre ordinateur ;git pullrécupère sur votre ordinateur les versions ajoutées sur GitHub, par exemple par une autre personne ou depuis un autre ordinateur ;git clonetélécharge un dépôt qui existe sur GitHub, avec tous ses fichiers et tout son historique.La toute première fois, Git ne sait pas encore où envoyer vos versions. Créez d'abord un dépôt vide sur GitHub. Indiquez ensuite son adresse à Git avec
git remote add originsuivi de l'adresse du dépôt. Pour le premier envoi, tapezgit push -u originsuivi du nom de votre branche, souventmainoumaster. Git retient alors la destination, etgit pushseul suffit les fois suivantes. Si vous avez commencé pargit clone, tout cela est déjà réglé : le clonage enregistre l'adresse tout seul.
Au quotidien, la routine tient en trois lignes : vous choisissez les fichiers modifiés, vous enregistrez la version avec un message, puis vous l'envoyez en ligne.

bash git add index.html git commit -m "Ajoute la page d'accueil" git push
Les deux premières lignes ne touchent qu'à votre ordinateur, et c'est seulement la troisième qui contacte GitHub. Tant que vous n'avez pas fait de git push, la copie en ligne ne sait rien de vos dernières modifications.
Au début, beaucoup font un commit, puis cherchent en vain leurs changements sur GitHub. Le commit était bien enregistré, mais seulement sur leur ordinateur : il manquait l'envoi avec git push. Si votre ordinateur tombe en panne avant cet envoi, ces versions ne sont nulle part ailleurs.
Le tableau ci-dessous reprend, critère par critère, ce qui sépare les deux outils.
| Critère | Git | GitHub |
|---|---|---|
| Ce que c'est | Un logiciel | Un service en ligne |
| Où il se trouve | Sur votre ordinateur | Sur les ordinateurs de GitHub, accessibles par Internet |
| Connexion à Internet | Pas nécessaire | Nécessaire |
| Compte | Aucun | Un compte GitHub |
| Prix | Gratuit | Offre gratuite, offres payantes pour les équipes |
| Qui le développe | Un projet libre, né dans la communauté Linux | L'entreprise GitHub, propriété de Microsoft |
Comme GitHub ne fait que garder une copie de dépôts Git, rien ne l'empêche d'avoir des concurrents qui font le même travail.
Où se place GitLab, et les autres services du même genre
GitLab est un concurrent direct de GitHub : un autre service en ligne qui garde une copie de vos dépôts Git et y ajoute ses propres outils de travail en équipe. Git reste le même dans les deux cas, si bien que vos commandes git add, git commit et git push ne changent pas. Seuls le site sur lequel vous créez votre compte et l'adresse vers laquelle Git envoie vos versions diffèrent.

La première différence utile pour vous concerne la façon d'utiliser GitLab. Sa version en ligne, GitLab.com, se prend en main comme GitHub, et sa documentation précise qu'il n'y a rien à installer : un compte suffit. GitLab peut aussi être installé et géré sur un serveur à vous, c'est-à-dire un ordinateur que vous possédez ou louez et qui reste allumé en permanence. Vous devez alors installer, administrer et entretenir GitLab vous-même, ce qui réserve cette seconde option aux équipes techniques plutôt qu'aux débutants.
La seconde différence touche aux offres gratuites. L'offre gratuite de GitLab inclut 400 minutes d'automatisation par mois, contre 2 000 chez GitHub. Elle limite aussi à cinq le nombre de personnes dans un espace privé, une limite qui, selon la page de GitLab consacrée à cette règle, ne s'applique ni aux groupes publics ni à votre espace personnel. Pour un projet que vous menez seul, aucune de ces deux limites ne vous gênera.
D'autres services existent sur le même principe, comme Bitbucket. Ils reposent tous sur Git : ce que vous apprenez de Git vous servira donc quel que soit le service, alors que les menus d'un service ne servent que sur ce service.
Ce dont vous avez vraiment besoin pour débuter
Tout dépend de ce que vous voulez faire de votre projet, et la réponse tient en deux cas. Si vous travaillez seul sur un seul ordinateur et voulez surtout pouvoir revenir en arrière, Git suffit. Si vous voulez une sauvegarde en ligne, travailler depuis deux ordinateurs, montrer votre projet ou publier votre site, il vous faut Git et un compte en ligne.
Pour ce compte, partez du service qu'utilise le tutoriel ou l'outil que vous suivez. S'il parle de GitHub, prenez GitHub ; si rien ne vous oriente, l'un ou l'autre fera l'affaire, puisque l'offre gratuite de chacun couvre largement un projet personnel.
Vérifier si Git est déjà installé
Git est parfois déjà présent sur votre ordinateur sans que vous le sachiez. Pour le vérifier, ouvrez le terminal et tapez la commande suivante :
bash git --version

Si Git est installé, le terminal affiche son numéro de version. Sur Mac, la page d'installation officielle de Git indique que, s'il n'est pas encore là, le système vous propose de l'installer. Sur Windows, le téléchargement se fait depuis la page Git pour Windows du site officiel.
Terminal ou application : le cas de GitHub Desktop
Si le terminal vous bloque, GitHub Desktop offre une autre porte d'entrée. C'est une application de GitHub, installée sur votre ordinateur, qui fait les mêmes opérations Git avec des boutons : enregistrer une version, l'envoyer sur GitHub, récupérer les dernières modifications. Elle fonctionne, d'après sa page d'installation, sur macOS 12.0 ou plus récent et sur Windows 10 64 bits ou plus récent, mais pas sur Linux.

Ce chemin convient bien aux débutants : commencer avec une application comme GitHub Desktop pour comprendre les notions, puis apprendre peu à peu les commandes. Vous retrouverez alors les mêmes mots, dépôt, commit, push et pull, quel que soit l'outil.
Faites vos premiers essais sur un dossier de test, avec deux ou trois fichiers sans importance. Vous pourrez enregistrer, modifier et revenir en arrière sans risquer le projet auquel vous tenez.
Git garde votre historique, GitHub lui donne une adresse en ligne
Git et GitHub ne sont ni deux versions du même outil ni deux concurrents. Git est le logiciel qui, sur votre ordinateur, enregistre chaque version de votre projet. GitHub, comme GitLab ou Bitbucket, est l'un des services en ligne qui gardent une copie de ces versions pour les partager, travailler à plusieurs ou publier un site.
Une fois cette répartition claire, les consignes des tutoriels prennent leur sens : le commit concerne votre ordinateur, le push concerne la copie en ligne, et le service choisi compte bien moins que votre aisance avec Git.
