Cette leçon couvre les principes de base de GitHub, une plateforme permettant d’héberger et de gérer les modifications apportées à votre code.
Sketchnote par Tomomi Imura
Dans cette leçon, nous allons couvrir :
Avant de commencer, vous devrez vérifier si Git est installé. Dans le type de terminal :
git --version
Si Git n’est pas installé, télécharger Git. Ensuite, configurez votre profil Git local dans le terminal:
git config --global user.name " votre-nom"
git config --global user.email " your-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 vous devrez ouvrir votre terminal (ou : invite de commandes).
Accédez à github.com et créez un compte si vous ne l’avez pas déjà fait, ou connectez-vous et remplissez votre profil.
✅ GitHub n’est pas le seul référentiel de code au monde; il y en a d’autres, mais GitHub est le plus connu
Vous aurez besoin à la fois d’un dossier avec un projet de code sur votre ordinateur local (ordinateur portable ou PC) et d’un référentiel public sur GitHub, qui servira d’exemple pour contribuer aux projets d’autres personnes.
Supposons que vous ayez un dossier localement avec un projet de code et que vous souhaitiez commencer à suivre votre progression à l’aide de 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 moi. En lisant vos messages de validation des jours, des semaines ou des mois plus tard, vous pourrez vous rappeler pourquoi vous avez pris une décision, ou " annuler " une modification - c’est-à-dire lorsque vous écrivez de bons " messages de validation ".
Créer un référentiel sur GitHub. Sur GitHub.com, dans l’onglet Référentiels ou dans la barre de navigation en haut à droite, recherchez le bouton nouveau référentiel.
Accédez à votre dossier de travail. Dans votre terminal, basculez vers le dossier (également connu sous le nom de répertoire) que vous souhaitez démarrer le suivi. Tapez :
cd [nom de votre dossier]
git init
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
En règle générale, une commande git status
vous indique des choses comme quels fichiers sont prêts à être enregistrés dans le référentiel ou contient des modifications que vous voudrez peut-être conserver.
git add .
L’argument git add
plus .
indique que tous vos fichiers &changes pour le suivi.
git add [nom du fichier ou du dossier]
Cela nous aide à ajouter uniquement les fichiers sélectionnés à la zone de transit lorsque nous ne voulons pas valider tous les fichiers à la fois.
git reset
Cette commande nous aide à défaire tous les fichiers à la fois.
git reset [nom du fichier ou du dossier]
Cette commande nous aide à défaire un fichier particulier à la fois que nous ne voulons pas inclure pour le prochain commit.
git commit
. Un commit représente un point d’enregistrement dans l’historique de votre référentiel. Tapez ce qui suit pour créer un commit : git commit -m " premier commit "
Cela valide tous vos fichiers, en ajoutant le message " premier commit ". Pour les futurs messages de validation, vous voudrez être plus descriptif dans votre description pour indiquer le type de modification que vous avez apportée.
git remote add
fera exactement cela. Tapez la commande suivante :Remarque, avant de taper la commande, accédez à votre page de référentiel GitHub pour trouver l’URL du référentiel. Vous l’utiliserez dans la commande ci-dessous. Remplacez
repository_name
par votre URL GitHub.
git remote add origin https://github.com/username/repository_name.git
Cela crée un remote, ou une connexion, nommé " origin " pointant vers le référentiel GitHub que vous avez créé précédemment.
git push
, comme suit: git push -u origin main
Cela envoie vos commits dans votre branche "main" à GitHub..
git add .
git commit -m " tapez votre message de validation ici "
git push
Conseil, vous pouvez également adopter un fichier
.gitignore
pour empêcher les fichiers que vous ne souhaitez pas suivre d’apparaître sur GitHub - comme ce fichier de notes que vous stockez dans le même dossier mais n’a pas sa place sur un référentiel public. Vous pouvez trouver des modèles pour les fichiers.gitignore
dans .gitignore templates.
Une grande ligne d’objet de commit Git complète la phrase suivante: S’il est appliqué, ce commit le sera
Pour le sujet, utilisez l’impératif, présent: "changement" pas "changé" ni "changements".
Comme dans le sujet, dans le corps (facultatif) utilisez également l’impératif, le 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 surfer sur GitHub. Pouvez-vous trouver un très bon message d’engagement? Pouvez-vous en trouver un vraiment minime? Quelles informations pensez-vous être les plus importantes et les plus utiles à transmettre dans un message de validation ?
La principale raison de mettre des choses sur GitHub était de permettre de collaborer avec d’autres développeurs.
Dans votre référentiel, accédez à Insights > Community
pour voir comment votre projet se compare aux normes communautaires recommandées.
Voici quelques éléments qui peuvent améliorer votre référentiel GitHub :
Toutes ces ressources profiteront à l’intégration des nouveaux membres de l’équipe. Et ce sont généralement le genre de choses que les nouveaux contributeurs regardent avant même de regarder votre code, pour savoir si votre projet est le bon endroit pour qu’ils passent leur temps.
✅ 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? Remarque: il y a quelques outils pour aider à créer de bons README que vous voudrez peut-être essayer.
Les documents contributeurs aident les gens à contribuer au projet. Il explique les types de contributions que vous recherchez et comment le processus fonctionne. Les contributeurs devront passer par une série d’étapes pour pouvoir contribuer à votre référentiel sur GitHub :
✅ Imaginez une situation où les branches sont particulièrement essentielles à l’écriture et à l’expédition d’un bon code. À quels cas d’utilisation pouvez-vous penser ?
Remarque, soyez le changement que vous voulez voir dans le monde et créez également des branches pour votre propre travail. Tous les commits que vous faites seront effectués sur la branche que vous avez actuellement "extraite". Utilisez
git status
pour voir de quelle branche il s’agit.
Passons en revue un flux de travail de contributeur. Supposons que le contributeur a déjà forked et cloné le référentiel afin qu’il ait un référentiel Git prêt à être travaillé, sur sa machine locale :
git branch
pour créer une branche qui contiendra les modifications qu’ils veulent contribuer: git branch [nom_branche]
git switch
: git switch [nom_branche]
git add .
git commit -m " mes modifications "
Assurez-vous de donner à votre engagement une bonne réputation, pour votre bien ainsi que pour le mainteneur du repo que vous aidez.
main
. À un moment donné, vous avez fini de travailler et vous voulez combiner votre travail avec celui de la branche main
. La branche main
" a peut-être changé entre-temps, alors assurez-vous de la mettre à jour au plus tard avec les commandes suivantes: git switch principal
git pull
À ce stade, vous voulez vous assurer que tous les conflits, les 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 apportera tous les changements de main
dans votre branche et j’espère que vous pourrez simplement continuer. Sinon, VS Code vous dira où Git est confus et vous modifiez simplement les fichiers affectés pour dire quel contenu est le plus précis.
git push --set-upstream origin [nom_branche]
La commande ci-dessus crée la branche sur votre référentiel duppliqué.
Ouvrez une PR. Ensuite, vous souhaitez ouvrir une PR. Pour ce faire, accédez au référentiel forké sur GitHub. Vous verrez une indication sur GitHub où il vous demande si vous souhaitez créer une nouvelle PR, vous cliquez dessus et vous êtes emmené vers une interface où vous pouvez changer le titre du message de validation, lui donner une description plus appropriée. Maintenant, le mainteneur du repo que vous avez forké verra ce PR et croisons les doigts qu’il apprécieront et fusionnera votre PR. Vous êtes maintenant un contributeur, yay :)
Nettoyer. Il est considéré comme une bonne pratique de clean up après avoir fusionné avec succès un PR. Vous voulez nettoyer à la fois votre branche locale et la branche que vous avez poussée vers GitHub. Commençons par le supprimer localement avec la commande suivante:
git branch -d [nom_branche]
Assurez-vous d’accéder à la page GitHub pour le référentiel duppliqué suivant et supprimez la branche distante que vous venez d’y pousser.
Pull request
semble être un terme stupide parce que vous voulez vraiment pousser vos modifications au projet. Mais le responsable (propriétaire du projet) ou l’équipe principale doit prendre en compte vos modifications avant de la fusionner avec la branche " principale " du projet, vous demandez donc vraiment une décision de modification à un responsable.
Une pull request est l’endroit idéal pour comparer et discuter des différences introduites sur une branche avec des révisions, des commentaires, des tests intégrés, etc. Une bonne pull request suit à peu près les mêmes règles qu’un message de validation. Vous pouvez ajouter une référence à un problème dans le suivi des problèmes, lorsque votre travail, par exemple, résout un problème. Cela se fait à l’aide d’un #
suivi du numéro de votre problème. Par exemple #97
.
🤞croisons les doigts pour que toutes les vérifications réussissent et que le ou les propriétaires du projet fusionnent 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
Tout d’abord, trouvons un référentiel (ou repo) sur GitHub qui vous intéresse et auquel vous souhaitez apporter une modification. Vous voudrez copier son contenu sur votre machine.
✅ Un bon moyen de trouver des repos " conviviaux pour les débutants " est de rechercher par la balise 'good-first-issue'.
Il existe plusieurs façons de copier du code. Une façon consiste à " cloner " le contenu du référentiel, en utilisant HTTPS, SSH ou en utilisant l’interface de ligne de commande GitHub CLI (Interface de ligne de commande).
Ouvrez votre terminal et clonez le référentiel comme suit:
git clone https://github.com/ProjectURL
Pour travailler sur le projet, basculez vers le dossier de droite :
cd ProjectURL
Vous pouvez également ouvrir l’ensemble du projet à l’aide de Codespaces, de l’éditeur de code intégré / environnement de développement cloud de GitHub ou de GitHub Desktop.
Enfin, vous pouvez télécharger le code dans un dossier compressé.
Vous pouvez mettre en vedette, regarder et / ou " fork " n’importe quel référentiel public sur GitHub. Vous pouvez trouver vos référentiels étoilés dans le menu déroulant en haut à droite. C’est comme le bookmarking, mais pour le code.
Les projets ont un suivi des problèmes, principalement sur GitHub dans l’onglet " Problèmes ", 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 tels que Slack, Discord ou IRC.
✅ Jetez un coup d’œil à votre nouveau référentiel GitHub et essayez quelques éléments, comme la modification des paramètres, l’ajout d’informations à votre référentiel et la création d’un projet (comme un tableau Kanban). Il y a beaucoup de choses que vous pouvez faire!
Associez-vous à un ami pour travailler sur le code de l’autre. Créez un projet en collaboration, bifurquez du code, créez des branches et fusionnez les modifications.
Quiz de validation des connaissances
En savoir plus sur contribuer à un logiciel open source.
Pratique, pratique, pratique. GitHub a d’excellents chemins d’apprentissage disponibles via lab.github.com:
Vous trouverez également des laboratoires plus avancés.
Complétez la première semaine dans le laboratoire de formation GitHub