Qu'est-ce qu'une Pull Request
Une Pull Request est une demande d'inclusion de vos modifications dans la branche principale du projet. Imaginez que vous avez trouvé un projet open source intéressant, que vous avez trouvé un bug ou que vous avez trouvé une amélioration. Vous ne pouvez pas modifier directement le code dans le dépôt de quelqu'un d'autre, mais vous pouvez proposer vos modifications via une PR.
Le processus est le suivant : vous créez une copie du projet, apportez des modifications à votre version, puis demandez au propriétaire du projet de « tirer » (pull) vos modifications vers lui. D'où le nom - Pull Request.
Préparation à la création d'une Pull Request
Avant de commencer à apporter des modifications, il est important de bien se préparer.
Étudiez le projet
Prenez le temps d'étudier le projet auquel vous souhaitez contribuer. Lisez le fichier README, étudiez la structure du code, examinez les requêtes de tirage existantes, ouvertes et fermées. Cela vous aidera à comprendre le style de codage du projet et les exigences de changement.
Trouvez le fichier CONTRIBUTING
De nombreux projets ont un fichier CONTRIBUTING.md avec des règles de contribution. Il peut décrire les exigences de code, le processus de création de PR, la configuration de l'environnement de développement et d'autres informations importantes. Assurez-vous de suivre ces règles.
Vérifiez les problèmes
Avant de commencer, consultez la section Problèmes. Peut-être que quelqu'un travaille déjà sur une tâche similaire, ou votre idée a déjà été discutée. Si vous souhaitez corriger un bogue ou ajouter une nouvelle fonctionnalité, il est préférable de créer d'abord un Issue et d'en discuter avec les mainteneurs.
Fork et clonage du dépôt
La première étape technique est la création d'un fork du projet.
Créer une fourchette
Sur GitHub, cela se fait avec un seul bouton « Fork » dans le coin supérieur droit de la page du dépôt. Le fork crée une copie du dépôt dans votre compte, où vous pouvez expérimenter librement.
Cloner le fork
Maintenant, clonez votre fork sur une machine locale :
git clone https:// github.com/votre-nom-d'utilisateur/nom-du-projet.git
cd название-проектаAjouter un upstream remote
Pour synchroniser votre fork avec le dépôt d'origine, ajoutez-le en tant qu'upstream :
git remote add upstream https:// github.com/propriétaire/nom-projet.gitVous avez maintenant deux remote : origin (votre fork) et upstream (le dépôt d'origine).
Création d'une branche pour les changements
Ne travaillez jamais directement dans la branche principale ou maîtresse. Créez toujours une branche distincte pour chaque tâche :
git checkout -b fix-navigation-bugLe nom de la branche doit être descriptif et refléter l'essence des changements. De bons exemples : feature-add-dark-mode, fix-login-error, docs-update-readme.
Modifications
Vous pouvez maintenant commencer à travailler sur le code.
Suivez le style du projet
Utilisez le même style de codage que dans le projet. Faites attention aux retraits, à la dénomination des variables, à la structure des fichiers. De nombreux projets utilisent des linters et des formateurs — exécutez-les avant de valider.
Faites des commits atomiques
Un commit est un changement logique. Cela simplifie la révision du code et facilite l'annulation des modifications si nécessaire. Les messages de validation doivent être informatifs :
git add .
git commit -m "Fixed a bug with navigation freezing when scrolling quickly"Mauvais message : « correction » ou « fix ». Bon : décrit exactement ce qui a été fait et pourquoi.
Écrivez des tests
Si le projet utilise des tests, assurez-vous d'ajouter des tests pour votre code. Assurez-vous également que tous les tests existants réussissent :
npm test
# ou
pytest
Création d'une Pull Request
Lorsque les modifications sont prêtes, envoyez la branche à votre fork :
git push origin fix-navigation-bugMaintenant, sur GitHub, un bouton « Compare & pull request » apparaîtra dans votre fork. Appuyez dessus.
Remplissez la description de la DA
Description Pull Request est votre chance d'expliquer ce que vous avez fait et pourquoi. Une bonne description comprend :
Ce qui a changé : brève description des changements.
Pourquoi : explication de la raison des changements, lien vers Issue s'il y en a un.
Comment tester : instructions pour vérifier les modifications.
Captures d'écran : si les modifications affectent l'interface utilisateur, ajoutez des captures d'écran avant et après.
Exemple de description :
# # Description
Исправлен баг с зависанием навигационного меню при быстрой прокрутке страницы.
# # Problèmes liés
Closes #234
# # Modifications
- Добавлен debounce для обработчика скролла
- Оптимизирован расчёт позиции меню
- Добавлены unit-тесты для новой логики
# # Test
1. Откройте страницу с длинным контентом
2. Быстро прокрутите вниз и вверх
3. Навигация должна плавно следовать за скроллом без задержекProcessus de révision de code
Après la création de la PR, le processus de révision du code commence.
Préparez-vous à des modifications
Les mainteneurs peuvent demander des modifications. C'est normal et cela ne signifie pas que votre code est mauvais. La revue de code permet d'améliorer la qualité et de maintenir la cohérence du projet.
Répondez aux commentaires
Si l'évaluateur a laissé un commentaire, répondez-y. Si vous êtes d'accord avec le commentaire, apportez des modifications. Si vous n'êtes pas d'accord, argumentez votre position poliment et de manière constructive.
Apportez des modifications dans la même branche
Toutes les validations supplémentaires dans votre branche seront automatiquement ajoutées au PR :
# nous apportons des modifications
git add .
git commit -m "Code review comments taken into account: improved error handling"
git push origin fix-navigation-bugSynchronisation avec la branche principale
Pendant la revue, la branche principale du projet peut aller de l'avant. Il est important de garder votre branche à jour :
# obtenir les modifications du dépôt d'origine
git fetch upstream
# passer à la page principale
git checkout main
# nous mettons à jour notre main
git merge upstream/main
# retour à notre branche
git checkout fix-navigation-bug
# fusionner les modifications de main
git merge mainS'il y a des conflits, résolvez-les et faites un commit.
Erreurs courantes et comment les éviter
PR trop grand
Une demande de fusion (PR) doit résoudre un seul problème. Si vous avez corrigé un bogue et ajouté une nouvelle fonctionnalité en même temps, divisez-le en deux PR distincts. Les grandes relations publiques sont difficiles à examiner et sont moins susceptibles d'être acceptées.
Modifications dans les fichiers des autres
Ne modifiez pas la mise en forme ou le style des fichiers qui ne sont pas liés à votre tâche. Cela crée du bruit dans les relations publiques et complique la révision.
Absence de description
Un PR sans description ou avec la description « fix » a peu de chances d'être accepté. Prenez le temps de rédiger une description normale.
Ignorer CI/CD
Si des contrôles automatiques (tests, linters) sont configurés dans le projet, assurez-vous qu'ils réussissent. Les PR avec des tests en baisse ne seront pas pris en compte.
Après l'adoption du PR
Lorsque votre PR est accepté et fusionné dans la branche principale, vous pouvez supprimer votre branche de travail :
# supprimer localement
git branch -d fix-navigation-bug
# supprimer sur GitHub
git push origin --delete fix-navigation-bugMettez à jour votre fork :
git checkout main
git pull upstream main
git push origin mainConseils pour les débutants
Commencez modestement
N'essayez pas de faire un gros remaniement tout de suite. Commencez par des tâches simples : correction de fautes de frappe dans la documentation, bogues mineurs, ajout d'exemples. Cela vous aidera à vous familiariser avec le processus sans stress inutile.
Recherchez les étiquettes « good first issue »
De nombreux projets marquent les tâches appropriées pour les débutants avec des étiquettes spéciales : good first issue, beginner friendly, help wanted. Commencez par eux.
N'hésitez pas à poser des questions
Si quelque chose n'est pas clair, demandez dans Issue ou dans le chat du projet. La communauté open source est généralement amicale avec les débutants qui essaient de comprendre.
Soyez patient
Les mainteneurs le font souvent pendant leur temps libre. Votre PR peut ne pas être regardé immédiatement — c'est normal. Si plus d'une semaine s'est écoulée, vous pouvez poliment vous rappeler.
Étiquette en open source
Soyez poli
Communiquez avec respect, même si vous n'êtes pas d'accord. Rappelez-vous qu'il y a une personne vivante de l'autre côté de l'écran.
Acceptez les critiques de manière constructive
La revue de code n'est pas une critique de vous en tant que développeur, mais un moyen d'améliorer le code. Prenez les commentaires comme une occasion d'apprendre quelque chose de nouveau.
Remerciez pour l'aide
Si vous avez été aidé à résoudre un problème ou si vous avez pris le temps de le revoir, remerciez. Cela motive les gens à continuer à investir du temps dans le projet.
Conclusion
La création de Pull Requests est une compétence qui se développe avec la pratique. La première PR peut sembler intimidante, mais à chaque processus suivant, cela devient plus facile et plus naturel. N'ayez pas peur de faire des erreurs, c'est ainsi que nous apprenons.
La participation à des projets open source améliore non seulement vos compétences techniques, mais ouvre également la porte à la communauté des développeurs, vous aide à créer un portfolio et à acquérir de l'expérience avec de vrais projets. Commencez petit, soyez patient et attentif aux détails, et vous deviendrez bientôt un contributeur confiant.
Code est une plateforme éducative pour les développeurs débutants, où vous trouverez des cours de programmation clairs sur Python, JavaScript, HTML, CSS et d'autres technologies populaires.
Rejoignez notre Chaîne Telegram, où nous partageons des articles utiles, analysons des concepts complexes dans un langage simple et aidons les débutants à faire leurs premiers pas dans le monde du développement.
