Lab Niveau 14 — Collaboration Open Source
Objectifs
Section titled “Objectifs”- Simuler le workflow de contribution open source via Fork.
- Configurer les fichiers clés de gouvernance (
CONTRIBUTING.md,CODEOWNERS,LICENSE). - Installer et s’authentifier avec GitHub CLI (
gh). - Créer une Pull Request depuis le terminal avec
gh pr create.
Exercice Pratique
Section titled “Exercice Pratique”Dans cet exercice, vous allez simuler une contribution à un projet open source en configurant votre dépôt local et en créant des fichiers de gouvernance de qualité professionnelle.
Étape 1 : Configurer les relations distantes (Remotes)
Section titled “Étape 1 : Configurer les relations distantes (Remotes)”- Imaginez que vous travaillez sur votre propre Fork (
origin). - Ajoutez le dépôt de l’organisation officielle comme source de synchronisation distante (
upstream) :Terminal window git remote add upstream https://github.com/joinhashcode/workshops.git - Listez vos dépôts distants configurés pour vérifier que vous avez bien
originetupstreamd’actifs :Terminal window git remote -v
Étape 2 : Mettre en place la gouvernance du dépôt
Section titled “Étape 2 : Mettre en place la gouvernance du dépôt”Dans votre dépôt local de TP :
- Créez un fichier
CONTRIBUTING.mdà la racine contenant les étapes clés pour cloner, tester et proposer un correctif de bug sur votre projet. - Créez un dossier
.github/à la racine et créez-y un fichierCODEOWNERSpour assigner automatiquement les relecteurs :# Assigner l'administrateur pour toutes les modifications de code source/src/ @votre-identifiant-github - Ajoutez un fichier
LICENSEà la racine avec les termes d’une licence open source courante (comme la licence MIT).
Étape 3 : Utiliser GitHub CLI (gh)
Section titled “Étape 3 : Utiliser GitHub CLI (gh)”- Installez GitHub CLI sur votre machine (si ce n’est pas déjà fait, suivez les instructions de l’Atelier 12).
- Connectez-vous à votre compte GitHub depuis votre terminal habituel :
Terminal window gh auth login - Créez une nouvelle branche locale
feature-governance. - Ajoutez et commitez vos nouveaux fichiers de gouvernance.
- Utilisez la commande GitHub CLI pour pousser votre branche et ouvrir directement votre Pull Request depuis le terminal :
Terminal window gh pr create --title "docs: add repository governance files" --body "This PR adds README, CONTRIBUTING, CODEOWNERS, and LICENSE files."
Checklist de validation
Section titled “Checklist de validation”- Le remote
upstreamest configuré et visible dansgit remote -v. - Le fichier
CONTRIBUTING.mddétaille le processus de contribution. - Le fichier
.github/CODEOWNERSassigne correctement les fichiers de/src/. - Le fichier
LICENSE(ex: MIT) est présent à la racine du dépôt. - La Pull Request a été créée avec succès en ligne de commande avec
gh pr create.
Compétences acquises
Section titled “Compétences acquises”- Workflow de Forking et synchronisation
- Utilisation professionnelle de GitHub CLI (
gh) - Configuration de la gouvernance de dépôt (Licence, Codeowners)
- Standards de contribution Open Source
Fiches de révision
Section titled “Fiches de révision”Quelle commande affiche tous les dépôts distants (remotes) configurés et leurs URLs ?
Cliquer pour révéler la réponsegit remote -v
Cliquer pour voir la questionComment cloner un dépôt GitHub avec GitHub CLI ?
Cliquer pour révéler la réponsegh repo clone <propriétaire>/<dépôt>
Cliquer pour voir la questionOù doit-on placer le fichier CODEOWNERS ?
Cliquer pour révéler la réponseÀ la racine du projet, dans le dossier .github/ ou dans le dossier docs/.
Cliquer pour voir la questionÉvaluation des connaissances
Section titled “Évaluation des connaissances”Quelle commande ajoute le dépôt d'origine comme source amont ?
Quelle commande GitHub CLI permet de lister les Pull Requests ouvertes sur le dépôt actuel ?
Quelle licence open source permet d'utiliser, copier, modifier et distribuer le code presque sans restriction ?