Qu'est-ce que GitHub ? Le contrôle de version pour les non-développeurs
GitHub est un site web qui stocke le code de projets logiciels avec leur historique complet, pour que vous puissiez voir chaque modification, annuler les erreurs et travailler sur le même projet avec d'autres personnes. Il repose sur Git, un logiciel gratuit qui enregistre des instantanés des fichiers d'un projet au fil du temps. Git est l'outil qui conserve l'historique ; GitHub est le lieu en ligne où cet historique est partagé, sauvegardé et discuté.
Si vous créez avec l'IA, GitHub sert surtout à deux choses : posséder une copie de votre code en dehors de l'outil avec lequel vous l'avez créé, et le confier à un développeur dans le format qu'il utilise déjà.
Pourquoi c'est important quand on crée avec l'IA
Un créateur d'apps IA écrit et modifie beaucoup de code très vite, et toutes les modifications ne sont pas des améliorations. Le contrôle de version permet de garder les choses sous contrôle.
- Annulez sans crainte. Chaque modification enregistrée est un instantané. Si l'IA casse quelque chose, vous revenez au dernier état correct.
- La propriété. Le code dans votre propre compte GitHub vous appartient, même si vous changez d'outil, si vous arrêtez de payer un service ou si vous voulez un second avis.
- Travailler avec des développeurs. Presque tous les développeurs utilisent Git au quotidien. Un dépôt leur permet de relire ce que l'IA a écrit, de le corriger et de renvoyer leurs modifications.
- Déployer ailleurs. Beaucoup de plateformes d'hébergement peuvent déployer directement depuis un dépôt GitHub.
Une analogie du quotidien : le suivi des modifications et un espace partagé
Imaginez un document avec le suivi des modifications activé, stocké dans un espace partagé.
- Git joue le rôle du suivi des modifications : chaque modification est enregistrée, avec son auteur, sa date et sa raison, et vous pouvez revenir à n'importe quelle version.
- GitHub est l'espace partagé : le document est en ligne, d'autres peuvent en obtenir une copie, et il existe un endroit pour commenter et valider.
- Une branche ressemble à une copie intitulée « brouillon — nouvelle section tarifs » qui vous permet d'essayer sans toucher à la version sur laquelle tout le monde compte. Si l'essai fonctionne, vous le fusionnez.
La différence avec un document tient à l'échelle. Une app compte des centaines de fichiers, et Git les suit tous ensemble : un instantané représente l'état de l'ensemble du projet à un moment donné.
Les termes Git et GitHub que vous rencontrerez
| Terme | Signification simple |
|---|---|
| Dépôt (repo) | Un dossier de projet avec son historique complet |
| Commit | Un instantané enregistré des modifications, avec un court message qui les décrit |
| Branche | Une ligne de travail séparée, pour que les essais ne perturbent pas la version principale |
| main | Le nom habituel de la branche principale, celle qui est mise en ligne |
| Fusion (merge) | Intégrer les modifications d'une branche dans une autre |
| Conflit de fusion | Deux modifications ont touché les mêmes lignes ; quelqu'un doit choisir laquelle garder |
| Clone | Télécharger une copie complète d'un dépôt, historique compris |
| Push / pull | Envoyer vos commits vers GitHub / récupérer les commits des autres |
| Pull request (PR) | Une page GitHub qui propose de fusionner une branche, où l'on relit et discute les modifications |
| Fork | Votre propre copie du dépôt de quelqu'un d'autre, sur GitHub |
| Issue | Une liste de tâches ou un signalement de bug rattaché au dépôt |
.gitignore | La liste des fichiers que Git ne doit jamais enregistrer, comme les secrets .env et les dépendances téléchargées |
| GitHub Actions | Une automatisation qui s'exécute sur GitHub, par exemple des tests à chaque pull request |
Deux points méritent d'être soulignés. D'abord, l'historique Git est permanent par conception : si un mot de passe est commité puis poussé, le supprimer dans un commit ultérieur ne le retire pas de l'historique. Ensuite, un commit n'est aussi utile que son message. « Corriger le double comptage des réservations quand deux personnes réservent en même temps » vous aidera plus tard ; « mise à jour » non.
Un exemple concret : confier une app créée avec l'IA à un freelance
Vous avez créé un portail client avec un créateur d'apps IA. Il fonctionne, mais vous voulez qu'un développeur freelance ajoute une intégration délicate avec votre logiciel de comptabilité.
- Reliez le projet à un nouveau dépôt GitHub privé et poussez le code. Le dépôt contient désormais le code et son historique.
- Vérifiez ce qu'il contient. Ouvrez le dépôt sur GitHub. Il ne doit pas y avoir de fichier
.envni de clé API dans le code. Les secrets restent dans les paramètres de votre plateforme et sont partagés avec le freelance séparément, si besoin ; voir variables d'environnement et secrets. - Invitez le freelance comme collaborateur de ce seul dépôt.
- Il travaille sur une branche nommée par exemple
synchro-comptabilite, enregistre ses commits au fil de l'eau et ouvre une pull request une fois terminé. - Vous relisez la pull request. Même sans lire le code, vous pouvez lire la description, voir quels fichiers ont changé et poser des questions dans les commentaires.
- Fusionnez lorsque vous êtes satisfait, puis récupérez les modifications dans votre créateur d'apps pour que vous et l'IA continuiez à partir de la nouvelle version.
Tout au long du processus, vous voyez exactement ce qui a changé et vous pouvez l'annuler si besoin. C'est toute la valeur du contrôle de version en un seul flux de travail. Si vous hésitez encore à faire appel à un développeur, voir embaucher un développeur ou créer avec l'IA.
Erreurs courantes et idées fausses
- « GitHub et Git, c'est la même chose. » Git fonctionne sans GitHub ; des alternatives comme GitLab et Bitbucket hébergent aussi des dépôts Git.
- « GitHub fera tourner mon app. » GitHub stocke le code. Le rendre accessible au public relève de l'hébergement web, un service distinct (même si certains hébergeurs déploient depuis GitHub).
- Publier des secrets dans un commit. L'erreur la plus fréquente et la plus dommageable. Utilisez
.gitignorepour les fichiers.env, et remplacez toute clé qui a déjà été poussée. - Une seule branche et aucun message. Acceptable pour des essais en solo, mais donnez des messages clairs à vos commits et utilisez des branches pour tout ce qui est risqué.
- Modifier à deux endroits à la fois. Si vous modifiez le code à la fois sur GitHub et dans votre créateur d'apps sans récupérer les changements entre les deux, vous créez des conflits. Choisissez un seul endroit pour modifier à la fois et synchronisez avant de changer.
- Croire qu'un dépôt privé sauvegarde tout. Il contient le code, pas le contenu de votre base de données ni les fichiers envoyés. Ceux-ci nécessitent leurs propres sauvegardes.
Que demander à votre créateur d'apps IA
- « Ajoute un
.gitignorequi exclut.env, les dossiers de dépendances et les fichiers de build. » - « Écris un README qui explique comment installer l'app, quelles variables d'environnement sont nécessaires (noms seulement) et comment la lancer. »
- « Ajoute un
.env.exampleavec tous les noms de variables et aucune vraie valeur. » - « Utilise des messages de commit clairs et descriptifs pour chaque modification. »
Ces quatre demandes produisent un dépôt qu'un développeur peut prendre en main en quelques minutes. Pour transférer l'app sur vos propres serveurs, voir comment exporter et auto-héberger une app créée avec l'IA, et pour la durcir avant d'accueillir de vrais utilisateurs, passer un prototype IA en production.
GitHub et Mythex
Mythex conserve l'historique à votre place, sur chaque formule : après chaque tour d'agent réussi, il enregistre un point de contrôle, c'est-à-dire un instantané Git auquel vous pouvez revenir. Avec l'offre Pro, vous pouvez connecter GitHub et pousser ou récupérer le projet depuis votre propre dépôt, ou télécharger tout le projet sous forme d'archive ; les secrets et les dépendances installées sont exclus des exports. Ici, GitHub sert à synchroniser le code, pas à vous connecter à Mythex. Voir GitHub, export et import dans la documentation, et la page tarifs pour le contenu de chaque formule.
Questions
Quelle est la différence entre Git et GitHub ?
Git est un logiciel gratuit qui enregistre l'historique des fichiers d'un projet sur n'importe quel ordinateur. GitHub est un site web, appartenant à Microsoft, qui héberge des dépôts Git en ligne et ajoute des outils de collaboration comme les pull requests, les issues et l'automatisation.
Ai-je besoin de GitHub pour créer une app avec l'IA ?
Non. Beaucoup de créateurs d'apps IA conservent l'historique pour vous, directement dans le produit. GitHub devient utile lorsque vous voulez votre propre copie du code, lorsque vous travaillez avec un développeur ou lorsque vous prévoyez d'héberger l'app ailleurs.
GitHub est-il gratuit ?
GitHub propose une formule gratuite qui inclut les dépôts publics et privés, suffisante pour la plupart des particuliers et des petites équipes. Les formules payantes ajoutent la gestion d'équipe et des fonctionnalités supplémentaires ; consultez la page tarifs de GitHub pour les détails à jour.
Mon code est-il public sur GitHub ?
Seulement si vous rendez le dépôt public. Les dépôts privés ne sont visibles que par vous et les personnes que vous invitez. Même dans un dépôt privé, ne publiez jamais de mots de passe ni de clés API.