2 votes

difficulté à fusionner plusieurs demandes de retrait d'un même contributeur

J'ai reçu plusieurs demandes de retrait de la part du même contributeur. J'ai suivi la procédure GitHub ' Utilisation de la demande de transfert et a fusionné sa première demande sans problème :

git checkout master
git remote add username git://github.com/username/repo.git
git fetch username
git merge username/pull-request1

Avant de fusionner les autres demandes de pull de la même personne, j'ai ajouté quelques commits supplémentaires à master, puis j'ai poussé. Sa pull request a été automatiquement fermée et j'étais content.

Puis, aujourd'hui, j'ai fusionné sa deuxième demande de retrait.

git merge username/pull-request2

Fusionne sans conflit mais le code provenant de pull-request2 n'est pas là (certains morceaux le sont). Après lecture ce Je soupçonne que le fait de commettre à master avant de fusionner les demandes de pull restantes était une erreur, mais maintenant je ne suis pas sûr de ce que je dois faire. Puisque j'ai poussé vers le dépôt principal et que d'autres personnes ont peut-être tiré, je ne peux pas revenir en arrière.

EDIT : Je viens d'essayer avec la 3ème demande et celle-ci a été fusionnée sans problème. Il doit donc s'agir d'un problème lié au pull #2, mais en réalité, il s'agit simplement d'une demande de pull. Je ne vois pas pourquoi elle ne devrait pas fusionner.

1voto

Nicola Iarocci Points 5532

Je publie ici mes conclusions, en espérant qu'elles pourront être utiles à d'autres lecteurs.

La seule chose étrange dans ce RP était le nom de la branche du contributeur, qui se trouvait être master comme la branche vers laquelle il voulait fusionner. Je pense que cela a pu être le problème. En enquêtant, j'ai même trouvé un référence à ce genre de problème :

Lorsque votre demande de modification est fusionnée dans la branche cible, la commande mainteneur peut décider de rebaser vos commits pour éviter un commit de fusion, ou de regrouper les modifications en une seule validation cohérente. Si votre pull provient de votre branche 'master', vous rencontrerez des problèmes lors de la fusion de la branche cible dans votre propre branche "master". .

Nous avons fini par fermer le PR gênant. Le contributeur en a alors soumis un nouveau depuis une branche différente, et il a été fusionné sans problème.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X