Publier sur GitHub
Le gain du jour : ton dépôt local rejoint Internet. À la fin, ton code sera visible sur GitHub, sauvegardé hors de ta machine, et prêt à être partagé avec une équipe.
Échauffement — de mémoire, sans tricher
0. Pour fusionner ma-branche dans main, quelle est la bonne séquence ?
Git ≠ GitHub
Mets-toi bien ça en tête une fois pour toutes :
- Git = le logiciel de gestion de versions, sur ta machine. Il marche sans Internet.
- GitHub = un site web qui héberge des copies de dépôts Git, pour les partager. (Il existe des concurrents : GitLab, Bitbucket — mêmes concepts.)
La copie hébergée s’appelle un remote (dépôt distant). Par convention, ton remote
principal se nomme origin
(Pro Git, « Travailler avec des dépôts distants »).
Deux verbes font tout le trafic :
ton repository local ── git push ──▶ origin (GitHub)
ton repository local ◀── git pull ── origin (GitHub)
Committer reste 100 % local. Tant que tu n’as pas tapé git push, GitHub ne voit rien.
C’est aussi pour ça que la règle de la leçon 3 disait : on peut --amend un commit
tant qu’il n’est pas poussé — une fois sur origin, d’autres ont pu le récupérer.
Préparation (une fois pour toutes)
Crée un compte gratuit sur github.com/signup si tu n’en as pas.
Installe le CLI officiel GitHub et connecte-toi (c’est la méthode d’authentification la plus simple aujourd’hui) :
brew install gh # macOS ; Windows/Linux : voir cli.github.com gh auth login # choisis GitHub.com → HTTPS → Login with a web browserPourquoi ? GitHub n’accepte plus les mots de passe en ligne de commande ;
ghgère le jeton d’accès pour toi (GitHub Docs).
À toi de jouer
Depuis ton dépôt d’entraînement, crée le dépôt GitHub et connecte-le en une commande :
cd ~/Workspaces/pythons/git-entrainement gh repo create git-entrainement --private --source=. --pushDécortiquons :
--private= visible par toi seul ;--source=.= relie le dossier courant ;--push= pousse immédiatement tes commits.Vérifie la connexion et va voir le résultat :
git remote -v # origin https://github.com/<toi>/git-entrainement.git gh repo view --web # ouvre la page GitHub dans ton navigateurTon code, ton historique, tes messages de commit : tout y est. C’est publié.
Fais le cycle complet : un commit local, puis synchronise :
echo "seuil = 0.5" >> analyse.py git add analyse.py git commit -m "Ajoute le seuil de décision" git status # lis : « Your branch is ahead of 'origin/main' by 1 commit » git push git status # « up to date with origin/main »git statuste dit aussi où tu en es par rapport au remote. Toujours ta boussole.Simule un changement fait ailleurs (un collègue, ou toi sur un autre ordinateur) : sur la page GitHub de ton dépôt, ouvre
notes.txt, clique le crayon ✏️, ajoute une ligne, et valide avec « Commit changes ». Puis rapatrie-le :git pull cat notes.txt # la ligne éditée sur GitHub est arrivée chez toiTu viens de vivre le quotidien d’une équipe :
pullpour récupérer le travail des autres,pushpour publier le tien.Boucle d’entraînement (2 fois) : modifie → add → commit → push → vérifie sur la page GitHub que le commit apparaît. Puis édite sur GitHub → pull.
git clone ?C’est l’opération inverse du premier push : récupérer un dépôt existant.
git clone https://github.com/<equipe>/<projet>.git télécharge tout — fichiers,
historique complet, et configure origin automatiquement. En équipe, c’est presque
toujours comme ça qu’un projet commence pour toi. Teste : clone ton propre dépôt dans un
dossier temporaire, puis supprime-le.
Vérifie ta compréhension
1. Tu as commité trois fois mais ta page GitHub ne montre rien de neuf. Pourquoi ?
2. Que désigne origin ?
3. Tu rejoins une équipe dont le projet est déjà sur GitHub. Ta première commande ?
Pour aller plus loin
📖 Source principale : Pro Git (fr) — « Travailler avec des dépôts distants » et GitHub Docs (fr) — « À propos des référentiels distants ».
🗂 Fiche mise à jour : Commandes Git — antisèche.