Introduction
Le flux GitHub est un workflow lĂ©ger basĂ© sur des branches. Le flux GitHub sâavĂšre utiles pour tout le monde, pas seulement pour les dĂ©veloppeurs. Par exemple, ici chez GitHub, nous utilisons le flux GitHub pour notre stratĂ©gie de site, notre documentation et notre feuille de route.
Prérequis
Pour suivre le flux GitHub, vous aurez besoin dâun compte GitHub et dâun dĂ©pĂŽt. Pour plus dâinformations, contactez lâadministrateur de votre site. Pour plus dâinformations sur la crĂ©ation dâun rĂ©fĂ©rentiel, consultez Guide de dĂ©marrage rapide pour les dĂ©pĂŽts.
Suivi du flux GitHub
Conseil
Vous pouvez effectuer toutes les Ă©tapes du flux GitHub par le biais de lâinterface web GitHub, de la ligne de commande et de GitHub CLI ou GitHub Desktop. Pour plus dâinformations sur les outils que vous pouvez utiliser pour vous connecter Ă GitHub, consultez Connexion Ă GitHub.
Créer une branche
CrĂ©ez une branche dans votre dĂ©pĂŽt. Un nom de branche court et descriptif permet Ă vos collaborateurs de voir le travail en cours dâun seul coup dâĆil. Par exemple, increase-test-timeout ou add-code-of-conduct. Pour plus dâinformations, consultez « CrĂ©ation et suppression de branches dans votre rĂ©fĂ©rentiel ».
En créant une branche, vous créez un espace dans lequel travailler sans affecter la branche par défaut. De plus, vous donnez à vos collaborateurs la possibilité de passer en revue votre travail.
Apporter des modifications
Dans votre branche, apportez les modifications souhaitĂ©es au dĂ©pĂŽt. Pour plus dâinformations, consultez CrĂ©ation de fichiers, Modification de fichiers, Changement de nom dâun fichier, DĂ©placement d'un fichier vers un nouvel emplacement ou Suppression de fichiers dans un dĂ©pĂŽt.
Votre branche constitue un endroit sĂ»r pour apporter des modifications. Si vous faites une erreur, vous pouvez revenir sur vos modifications ou pousser (push) dâautres modifications afin de la corriger. Vos modifications ne terminent pas dans la branche par dĂ©faut tant que vous ne fusionnez pas votre branche.
Commitez et poussez (push) vos modifications vers votre branche. Attribuez Ă chaque commit un message descriptif pour vous aider, ainsi que les futurs contributeurs, Ă comprendre les modifications que contient le commit. Par exemple, fix typo ou increase rate limit.
Dans lâidĂ©al, chaque commit contient une modification isolĂ©e et complĂšte. Cela permet de revenir facilement Ă la derniĂšre version de vos modifications si vous dĂ©cidez dâadopter une approche diffĂ©rente. Par exemple, si vous voulez renommer une variable et ajouter des tests, placez le renommage de la variable dans un commit et les tests dans un autre commit. Plus tard, si vous voulez conserver les tests, mais revenir sur le renommage de la variable, vous pouvez revenir sur le commit spĂ©cifique qui contenait le renommage de la variable. Si vous placez le renommage de la variable et les tests dans le mĂȘme commit ou que vous propagez le renommage de la variable dans plusieurs commits, il vous faudra dĂ©ployer plus dâefforts pour revenir sur vos modifications.
En faisant un commit et en poussant vos changements, vous sauvegardez votre travail sur un stockage distant. Cela signifie que vous pouvez accĂ©der Ă votre travail Ă partir de nâimporte quel appareil. Cela signifie Ă©galement que vos collaborateurs peuvent voir votre travail, rĂ©pondre Ă des questions et apporter leurs suggestions ou contributions.
Continuez Ă apporter, commettre et pousser des modifications dans votre branche jusquâĂ ce que vous soyez prĂȘt Ă solliciter des retours.
Conseil
CrĂ©ez une branche distincte pour chaque ensemble de modifications non liĂ©es. Cela permet aux rĂ©viseurs dâĂ©mettre plus facilement leurs commentaires. Cela vous permet Ă©galement, ainsi quâĂ vos futurs collaborateurs, de mieux comprendre les modifications, de revenir dessus plus facilement ou de sâen inspirer. De plus, en cas de retard dans un ensemble de modifications, vos autres modifications, quant Ă elles, ne subissent pas de retard.
Créer une demande de pull
CrĂ©er une pull request pour demander aux collaborateurs de donner leur avis sur vos modifications. La rĂ©vision des pull requests est si prĂ©cieuse que certains dĂ©pĂŽts exigent une rĂ©vision favorable avant la fusion des pull requests. Si vous voulez obtenir des commentaires ou conseils prĂ©coces avant de finaliser vos modifications, vous pouvez marquer votre demande de tirage en tant que brouillon. Pour plus dâinformations, consultez « CrĂ©ation dâune pull request ».
Quand vous crĂ©ez une demande de tirage, incluez un rĂ©sumĂ© des modifications et du problĂšme quâelles rĂ©solvent. Vous pouvez inclure des images, des liens et des tableaux pour faciliter la transmission de ces informations. Si votre demande de tirage traite un problĂšme, liez ce problĂšme de sorte que ses parties prenantes aient connaissance de la demande de tirage et vice versa. Si vous liez avec un mot clĂ©, le problĂšme se ferme automatiquement lorsque la pull request fusionne. Pour plus dâinformations, consultez « Syntaxe dâĂ©criture et de mise en forme de base » et « Relier une demande de tirage Ă un problĂšme ».
En plus de remplir le corps de la demande de tirage, vous pouvez ajouter des commentaires à des lignes spécifiques de la demande de tirage pour indiquer explicitement quelque chose aux réviseurs.
Votre dĂ©pĂŽt peut ĂȘtre configurĂ© pour demander automatiquement une rĂ©vision Ă des Ă©quipes ou utilisateurs spĂ©cifiques lorsqu'une pull request est créée. Vous pouvez Ă©galement effectuer manuellement @mention ou demander une rĂ©vision Ă des personnes ou Ă©quipes spĂ©cifiques.
Si votre dĂ©pĂŽt comporte des vĂ©rifications configurĂ©es pour sâexĂ©cuter lors des demandes de tirage, celles qui Ă©chouent figurent dans votre demande de tirage. Cela vous aide Ă intercepter les erreurs avant de fusionner votre branche. Pour plus dâinformations, consultez « Ă propos des vĂ©rifications dâĂ©tat ».
Aborder les commentaires de révision
Les rĂ©viseurs doivent laisser des questions, des commentaires et des suggestions. Les rĂ©viseurs peuvent commenter l'ensemble de la demande de retrait ou ajouter des commentaires Ă des lignes ou des fichiers spĂ©cifiques. Les rĂ©viseurs et vous-mĂȘme pouvez insĂ©rer des images ou des suggestions de code pour clarifier les commentaires. Pour plus dâinformations, consultez « RĂ©vision des modifications dans les pull requests ».
Vous pouvez continuer à commiter et pousser (push) des modifications en réponse aux révisions. Votre demande de tirage se met automatiquement à jour.
Fusionner votre demande de tirage
Une fois votre pull request approuvĂ©e, fusionnez-la. Votre branche est alors automatiquement fusionnĂ©e de sorte que vos modifications apparaissent dans la branche par dĂ©faut. GitHub conserve lâhistorique des commentaires et des commits dans le pull request pour aider les futurs contributeurs Ă comprendre vos modifications. Pour plus dâinformations, consultez « Fusion d'une pull request ».
GitHub vous indique si votre demande de tirage comporte des conflits Ă rĂ©soudre avant la fusion. Pour plus dâinformations, consultez « Traitement des conflits de fusion ».
Les paramĂštres de protection des branches peuvent bloquer une fusion si votre pull request ne respecte pas certaines exigences. Par exemple, vous avez besoin dâun certain nombre de revues d'approbation ou de la revue dâapprobation dâune Ă©quipe spĂ©cifique. Pour plus dâinformations, consultez « Ă propos des branches protĂ©gĂ©es ».
Supprimer votre branche
AprĂšs avoir fusionnĂ© votre pull request, supprimez votre branche. Cela indique que le travail sur la branche est terminĂ© et empĂȘche vous et d'autres d'utiliser accidentellement d'anciennes branches. Pour plus dâinformations, consultez « Suppression et restauration de branches dans un pull request ».
Ne craignez pas de perdre des informations. Lâhistorique de vos pull requests et de vos commits ne sera pas supprimĂ©. Vous pouvez toujours restaurer votre branche supprimĂ©e ou annuler votre pull request, si nĂ©cessaire.