|
3 weeks ago | |
---|---|---|
.. | ||
README.md | 3 weeks ago |
README.md
Introduction à GitHub
Cette leçon couvre les bases de GitHub, une plateforme pour héberger et gérer les modifications de votre code.
Sketchnote par Tomomi Imura
Quiz Pré-Leçon
Introduction
Dans cette leçon, nous aborderons :
- le suivi du travail effectué sur votre machine
- le travail sur des projets avec d'autres personnes
- comment contribuer aux logiciels open source
Prérequis
Avant de commencer, vérifiez si Git est installé. Dans le terminal, tapez :
git --version
Si Git n'est pas installé, téléchargez Git. Ensuite, configurez votre profil Git local dans le terminal :
git config --global user.name "votre-nom"
git config --global user.email "votre-email"
Pour vérifier si Git est déjà configuré, vous pouvez taper :
git config --list
Vous aurez également besoin d'un compte GitHub, d'un éditeur de code (comme Visual Studio Code) et d'ouvrir votre terminal (ou : invite de commande).
Rendez-vous sur github.com pour créer un compte si ce n'est pas déjà fait, ou connectez-vous et complétez votre profil.
✅ GitHub n'est pas le seul dépôt de code au monde ; il en existe d'autres, mais GitHub est le plus connu.
Préparation
Vous aurez besoin d'un dossier contenant un projet de code sur votre machine locale (ordinateur portable ou PC) et d'un dépôt public sur GitHub, qui servira d'exemple pour apprendre à contribuer aux projets des autres.
Gestion du code
Supposons que vous avez un dossier localement avec un projet de code et que vous souhaitez commencer à suivre vos progrès en utilisant git - le système de contrôle de version. Certaines personnes comparent l'utilisation de git à l'écriture d'une lettre d'amour à votre futur vous-même. En lisant vos messages de commit des jours, semaines ou mois plus tard, vous pourrez vous rappeler pourquoi vous avez pris une décision ou "revenir en arrière" sur une modification - à condition d'écrire de bons "messages de commit".
Tâche : Créer un dépôt et commettre du code
Regardez la vidéo
-
Créer un dépôt sur GitHub. Sur GitHub.com, dans l'onglet des dépôts ou depuis la barre de navigation en haut à droite, trouvez le bouton nouveau dépôt.
- Donnez un nom à votre dépôt (dossier).
- Sélectionnez créer un dépôt.
-
Naviguer vers votre dossier de travail. Dans votre terminal, passez au dossier (également appelé répertoire) que vous souhaitez commencer à suivre. Tapez :
cd [name of your folder]
-
Initialiser un dépôt git. Dans votre projet, tapez :
git init
-
Vérifier le statut. Pour vérifier le statut de votre dépôt, tapez :
git status
La sortie peut ressembler à ceci :
Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: file.txt modified: file2.txt
Typiquement, une commande
git status
vous indique des informations comme les fichiers prêts à être enregistrés dans le dépôt ou ceux qui ont des modifications que vous pourriez vouloir conserver. -
Ajouter tous les fichiers pour le suivi
Cela s'appelle également mettre en scène les fichiers / ajouter des fichiers à la zone de staging.git add .
L'argument
git add
suivi de.
indique que tous vos fichiers et modifications sont prêts pour le suivi. -
Ajouter des fichiers sélectionnés pour le suivi
git add [file or folder name]
Cela permet d'ajouter uniquement des fichiers sélectionnés à la zone de staging lorsque vous ne souhaitez pas tout commettre en une seule fois.
-
Désépingler tous les fichiers
git reset
Cette commande permet de désépingler tous les fichiers en une seule fois.
-
Désépingler un fichier particulier
git reset [file or folder name]
Cette commande permet de désépingler uniquement un fichier particulier que vous ne souhaitez pas inclure dans le prochain commit.
-
Conserver votre travail. À ce stade, vous avez ajouté les fichiers dans une zone appelée staging area. Un endroit où Git suit vos fichiers. Pour rendre la modification permanente, vous devez commettre les fichiers. Pour ce faire, créez un commit avec la commande
git commit
. Un commit représente un point de sauvegarde dans l'historique de votre dépôt. Tapez la commande suivante pour créer un commit :git commit -m "first commit"
Cela commet tous vos fichiers, en ajoutant le message "premier commit". Pour les futurs messages de commit, vous voudrez être plus descriptif pour indiquer le type de modification que vous avez apportée.
-
Connecter votre dépôt Git local à GitHub. Un dépôt Git est utile sur votre machine, mais à un moment donné, vous voudrez sauvegarder vos fichiers quelque part et inviter d'autres personnes à travailler avec vous sur votre dépôt. Un excellent endroit pour cela est GitHub. Rappelez-vous que nous avons déjà créé un dépôt sur GitHub, donc la seule chose à faire est de connecter notre dépôt Git local à GitHub. La commande
git remote add
fera cela. Tapez la commande suivante :Notez, avant de taper la commande, allez sur la page de votre dépôt GitHub pour trouver l'URL du dépôt. Vous l'utiliserez dans la commande ci-dessous. Remplacez
https://github.com/username/repository_name.git
par votre URL GitHub.git remote add origin https://github.com/username/repository_name.git
Cela crée un remote, ou connexion, nommé "origin" pointant vers le dépôt GitHub que vous avez créé précédemment.
-
Envoyer les fichiers locaux à GitHub. Jusqu'à présent, vous avez créé une connexion entre le dépôt local et le dépôt GitHub. Envoyons ces fichiers à GitHub avec la commande suivante
git push
, comme suit :Notez, le nom de votre branche peut être différent par défaut de
main
.git push -u origin main
Cela envoie vos commits dans votre branche "main" à GitHub.
-
Ajouter d'autres modifications. Si vous souhaitez continuer à apporter des modifications et les envoyer à GitHub, vous n'aurez besoin que des trois commandes suivantes :
git add . git commit -m "type your commit message here" git push
Astuce, vous pourriez également vouloir adopter un fichier
.gitignore
pour empêcher les fichiers que vous ne voulez pas suivre d'apparaître sur GitHub - comme ce fichier de notes que vous stockez dans le même dossier mais qui n'a pas sa place dans un dépôt public. Vous pouvez trouver des modèles pour les fichiers.gitignore
sur .gitignore templates.
Messages de commit
Un excellent sujet de message de commit complète la phrase suivante :
Si appliqué, ce commit va
Pour le sujet, utilisez l'impératif au présent : "modifier" et non "modifié" ni "modifie".
Comme pour le sujet, dans le corps (facultatif), utilisez également l'impératif au présent. Le corps doit inclure la motivation du changement et contraster cela avec le comportement précédent. Vous expliquez le pourquoi
, pas le comment
.
✅ Prenez quelques minutes pour explorer GitHub. Pouvez-vous trouver un message de commit vraiment excellent ? Pouvez-vous en trouver un vraiment minimaliste ? Quelles informations pensez-vous être les plus importantes et utiles à transmettre dans un message de commit ?
Tâche : Collaborer
La principale raison de mettre des choses sur GitHub était de rendre possible la collaboration avec d'autres développeurs.
Travailler sur des projets avec d'autres
Regardez la vidéo
Dans votre dépôt, naviguez vers Insights > Community
pour voir comment votre projet se compare aux standards communautaires recommandés.
Voici quelques éléments qui peuvent améliorer votre dépôt GitHub :
- Description. Avez-vous ajouté une description pour votre projet ?
- README. Avez-vous ajouté un README ? GitHub fournit des conseils pour rédiger un README.
- Lignes directrices pour contribuer. Votre projet a-t-il des lignes directrices pour contribuer ?
- Code de conduite. Un Code de conduite ?
- Licence. Peut-être le plus important, une licence ?
Toutes ces ressources faciliteront l'intégration de nouveaux membres dans l'équipe. Et ce sont généralement les choses que les nouveaux contributeurs regardent avant même de consulter votre code, pour savoir si votre projet est le bon endroit où investir leur temps.
✅ Les fichiers README, bien qu'ils prennent du temps à préparer, sont souvent négligés par les mainteneurs occupés. Pouvez-vous trouver un exemple particulièrement descriptif ? Note : il existe des outils pour aider à créer de bons README que vous pourriez essayer.
Tâche : Fusionner du code
Les documents de contribution aident les gens à contribuer au projet. Ils expliquent quels types de contributions vous recherchez et comment le processus fonctionne. Les contributeurs devront suivre une série d'étapes pour pouvoir contribuer à votre dépôt sur GitHub :
- Forker votre dépôt. Vous voudrez probablement que les gens forkent votre projet. Forker signifie créer une réplique de votre dépôt sur leur profil GitHub.
- Cloner. À partir de là, ils cloneront le projet sur leur machine locale.
- Créer une branche. Vous voudrez leur demander de créer une branche pour leur travail.
- Concentrer leur modification sur une seule zone. Demandez aux contributeurs de concentrer leurs contributions sur une seule chose à la fois - de cette façon, les chances que vous puissiez fusionner leur travail sont plus élevées. Imaginez qu'ils corrigent un bug, ajoutent une nouvelle fonctionnalité et mettent à jour plusieurs tests - que faire si vous voulez, ou ne pouvez implémenter que 2 sur 3, ou 1 sur 3 modifications ?
✅ Imaginez une situation où les branches sont particulièrement critiques pour écrire et livrer du bon code. À quels cas d'utilisation pouvez-vous penser ?
Note, soyez le changement que vous voulez voir dans le monde, et créez des branches pour votre propre travail également. Tous les commits que vous faites seront effectués sur la branche sur laquelle vous êtes actuellement "checkout". Utilisez
git status
pour voir sur quelle branche vous êtes.
Passons en revue un flux de travail de contributeur. Supposons que le contributeur a déjà forké et cloné le dépôt afin qu'il ait un dépôt Git prêt à être travaillé sur sa machine locale :
-
Créer une branche. Utilisez la commande
git branch
pour créer une branche qui contiendra les modifications qu'ils souhaitent contribuer :git branch [branch-name]
-
Passer à la branche de travail. Passez à la branche spécifiée et mettez à jour le répertoire de travail avec
git switch
:git switch [branch-name]
-
Travailler. À ce stade, vous voulez ajouter vos modifications. N'oubliez pas d'en informer Git avec les commandes suivantes :
git add . git commit -m "my changes"
Assurez-vous de donner un bon nom à votre commit, pour votre bien ainsi que pour le mainteneur du dépôt que vous aidez.
-
Combiner votre travail avec la branche
main
. À un moment donné, vous avez terminé de travailler et vous voulez combiner votre travail avec celui de la branchemain
. La branchemain
a peut-être changé entre-temps, alors assurez-vous de la mettre d'abord à jour avec les commandes suivantes :git switch main git pull
À ce stade, vous voulez vous assurer que tous les conflits, situations où Git ne peut pas facilement combiner les modifications, se produisent dans votre branche de travail. Par conséquent, exécutez les commandes suivantes :
git switch [branch_name] git merge main
Cela intégrera toutes les modifications de
main
dans votre branche et, espérons-le, vous pourrez simplement continuer. Sinon, VS Code vous indiquera où Git est confus et vous modifierez les fichiers concernés pour indiquer quel contenu est le plus précis. -
Envoyer votre travail à GitHub. Envoyer votre travail à GitHub signifie deux choses : pousser votre branche vers votre dépôt et ensuite ouvrir une PR (Pull Request).
git push --set-upstream origin [branch-name]
La commande ci-dessus crée la branche sur votre dépôt forké.
-
Ouvrir une PR. Ensuite, vous voulez ouvrir une PR. Pour ce faire, naviguez vers le dépôt forké sur GitHub. Vous verrez une indication sur GitHub vous demandant si vous souhaitez créer une nouvelle PR, cliquez dessus et vous serez dirigé vers une interface où vous pourrez modifier le titre du message de commit, lui donner une description plus appropriée. Maintenant, le mainteneur du dépôt que vous avez forké verra cette PR et croisons les doigts il appréciera et fusionnera votre PR. Vous êtes maintenant un contributeur, yay :)
-
Nettoyer. Il est considéré comme une bonne pratique de nettoyer après avoir fusionné avec succès une PR. Vous voulez nettoyer à la fois votre branche locale et la branche que vous avez poussée sur GitHub. Supprimons-la d'abord localement avec la commande suivante :
git branch -d [branch-name]
Assurez-vous d'aller sur la page GitHub du dépôt forké ensuite et de supprimer la branche distante que vous venez d'y pousser.
Pull request
semble être un terme étrange, car en réalité, vous voulez pousser vos modifications au projet. Mais le mainteneur (propriétaire du projet) ou l'équipe principale doit examiner vos modifications avant de les fusionner avec la branche "main" du projet. Vous demandez donc une décision de modification à un mainteneur.
Une pull request est l'endroit où comparer et discuter des différences introduites sur une branche avec des revues, des commentaires, des tests intégrés, et plus encore. Une bonne pull request suit à peu près les mêmes règles qu'un message de commit. Vous pouvez ajouter une référence à un problème dans le gestionnaire de problèmes, par exemple lorsque votre travail corrige un problème. Cela se fait en utilisant un #
suivi du numéro de votre problème. Par exemple #97
.
🤞Croisons les doigts pour que tous les contrôles passent et que le(s) propriétaire(s) du projet fusionne(nt) vos modifications dans le projet🤞
Mettez à jour votre branche de travail locale actuelle avec tous les nouveaux commits de la branche distante correspondante sur GitHub :
git pull
Comment contribuer à l'open source
Tout d'abord, trouvons un dépôt (ou repo) sur GitHub qui vous intéresse et auquel vous souhaitez apporter une modification. Vous voudrez copier son contenu sur votre machine.
✅ Une bonne façon de trouver des dépôts adaptés aux débutants est de rechercher par le tag 'good-first-issue'.
Il existe plusieurs façons de copier du code. Une méthode consiste à "cloner" le contenu du dépôt, en utilisant HTTPS, SSH, ou en utilisant l'interface en ligne de commande GitHub CLI.
Ouvrez votre terminal et clonez le dépôt comme ceci :
git clone https://github.com/ProjectURL
Pour travailler sur le projet, passez au bon dossier :
cd ProjectURL
Vous pouvez également ouvrir l'ensemble du projet en utilisant Codespaces, l'éditeur de code intégré / environnement de développement cloud de GitHub, ou GitHub Desktop.
Enfin, vous pouvez télécharger le code dans un dossier compressé.
Quelques informations intéressantes sur GitHub
Vous pouvez étoiler, surveiller et/ou "forker" tout dépôt public sur GitHub. Vous pouvez retrouver vos dépôts étoilés dans le menu déroulant en haut à droite. C'est comme ajouter un favori, mais pour du code.
Les projets ont un gestionnaire de problèmes, généralement sur GitHub dans l'onglet "Issues" sauf indication contraire, où les gens discutent des problèmes liés au projet. Et l'onglet Pull Requests est l'endroit où les gens discutent et examinent les modifications en cours.
Les projets peuvent également avoir des discussions dans des forums, des listes de diffusion ou des canaux de chat comme Slack, Discord ou IRC.
✅ Explorez votre nouveau dépôt GitHub et essayez quelques fonctionnalités, comme modifier les paramètres, ajouter des informations à votre dépôt, et créer un projet (comme un tableau Kanban). Il y a beaucoup à découvrir !
🚀 Défi
Associez-vous à un ami pour travailler sur le code de chacun. Créez un projet collaboratif, forkez du code, créez des branches, et fusionnez des modifications.
Quiz post-lecture
Révision & Auto-apprentissage
Lisez davantage sur comment contribuer à un logiciel open source.
Pratiquez, pratiquez, pratiquez. GitHub propose d'excellents parcours d'apprentissage via skills.github.com :
Vous trouverez également des cours plus avancés.
Devoir
Complétez le cours Première semaine sur GitHub.
Avertissement :
Ce document a été traduit à l'aide du service de traduction automatique Co-op Translator. Bien que nous nous efforcions d'assurer l'exactitude, veuillez noter que les traductions automatisées peuvent contenir des erreurs ou des inexactitudes. Le document original dans sa langue d'origine doit être considéré comme la source faisant autorité. Pour des informations critiques, il est recommandé de recourir à une traduction humaine professionnelle. Nous déclinons toute responsabilité en cas de malentendus ou d'interprétations erronées résultant de l'utilisation de cette traduction.