Section 11.1.6 : GitHub — Collaborer et publier
🎯 Objectif pédagogique
Maîtriser GitHub pour publier, partager et collaborer sur du code. Vous serez capable de créer un dépôt distant, pousser votre code, cloner des projets existants, et comprendre le workflow collaboratif utilisé dans le monde professionnel.
Git local → GitHub mondial
Marc a compris Git local — mais à quoi ça sert si tout reste sur son PC ? Si son disque dur lâche, son code disparaît. GitHub résout trois problèmes :
- →Sauvegarde : votre code est stocké dans le cloud de Microsoft
- →Partage : votre code est visible par tous (projets open-source) ou privé
- →Collaboration : plusieurs développeurs travaillent sur le même projet
Créer un compte et un dépôt
- →Inscrivez-vous sur github.com
- →Créez un nouveau dépôt (New Repository) :
- →Name :
mon-premier-site - →Visibility : Public (visible par tous) ou Private
- →Add .gitignore : sélectionnez "Node"
- →Add README : cochez la case
- →Name :
Connecter votre projet local à GitHub
# Dans votre projet local déjà initialisé avec git
git remote add origin https://github.com/votre-username/mon-premier-site.git
# Pousser votre code
git push -u origin main
# Vérifier la connexion
git remote -v
Alternative : cloner un dépôt existant
git clone https://github.com/votre-username/mon-premier-site.git
cd mon-premier-site
# Tout est déjà configuré !
Le workflow push/pull
# Votre routine quotidienne avec GitHub :
# 1. Récupérer les dernières modifications
git pull origin main
# 2. Coder, tester...
# 3. Sauvegarder et envoyer
git add .
git commit -m "feat: nouvelle fonctionnalité"
git push origin main
Branches : travailler en parallèle
Les branches permettent de développer une fonctionnalité sans toucher au code principal :
# Créer et basculer sur une nouvelle branche
git checkout -b feature/formulaire-contact
# Coder la fonctionnalité...
git add . && git commit -m "feat: formulaire de contact"
# Revenir sur main
git checkout main
# Fusionner la branche dans main
git merge feature/formulaire-contact
# Supprimer la branche fusionnée
git branch -d feature/formulaire-contact
# Pousser main mis à jour
git push origin main
Marc : "Les branches, c'est comme les brouillons dans mon CRM Bloomberg. Je teste des stratégies en parallèle, et je ne valide que celles qui marchent."
Pull Requests : la revue de code
Dans un contexte professionnel, on ne merge jamais directement. On crée une Pull Request (PR) — une demande de fusion que d'autres développeurs relisent :
- →Vous créez une branche et poussez vos changements
- →Sur GitHub, vous ouvrez une Pull Request
- →Un collègue review votre code (commentaires, suggestions)
- →Après approbation, la PR est mergée dans
main
Les PRs vous rendront meilleur
Même en solo, créez des Pull Requests. Relire son propre code 24h après l'avoir écrit permet de détecter des erreurs invisibles au moment de l'écriture. Des études GitHub (2024) montrent que les projets avec code review ont 15% moins de bugs en production.
Votre profil GitHub = votre portfolio
Les recruteurs tech regardent votre GitHub avant votre LinkedIn :
- →Repositories publics : montrent vos compétences techniques
- →Contributions : la heatmap verte prouve votre régularité
- →README soignés : montrent votre capacité à documenter
- →Code propre : montre votre rigueur
Astuce portfolio de Marc
Créez un dépôt spécial avec votre nom d'utilisateur (ex: marc-dupont/marc-dupont) avec un README.md. GitHub l'affiche sur votre page de profil. Ajoutez-y : une bio, vos technologies, et des liens vers vos projets. C'est votre carte de visite.
🏋️ Exercice pratique (20 minutes)
- →Créez un compte GitHub si ce n'est pas fait
- →Créez un dépôt
bootcamp-exercices(public, avec README) - →Clonez-le en local :
git clone https://github.com/votre-username/bootcamp-exercices.git cd bootcamp-exercices - →Ajoutez votre fichier d'exercice :
echo "# Journal de bootcamp\n\nSemaine 1 - Premiers pas" > journal.md git add . && git commit -m "docs: début du journal de bootcamp" git push origin main - →Vérifiez sur github.com que votre fichier est visible
Marc a poussé son premier commit. "C'est officiel, j'ai du code sur internet. Même si c'est juste un fichier texte."
Quelle est la différence entre Git et GitHub ?
Pourquoi utiliser des branches plutôt que coder directement sur main ?
Marc veut récupérer les dernières modifications de son collègue depuis GitHub. Quelle commande ?