76 votes

Ajout de balises à une demande de tirage

J'ai un dépôt iontech/Anagen bifurque de agiliq/Anagen

J'ai fait quelques modifications à mon fork et j'ai ajouté un tag. Puis j'ai ouvert une Pull Request. Cette Pull Request ne comprend que mes commits.

Comment puis-je inclure la balise que j'ai créée dans la Pull Request ?

89voto

nulltoken Points 15605

Comment puis-je inclure la balise que j'ai créée dans la demande de retrait ?

Tu ne peux pas. Une demande de retrait ne comprend pas de balises. Une demande de retrait n'est qu'un pointeur vers un ensemble de commits (une branche) dans votre dépôt que vous proposez à un autre dépôt de fusionner.

Si vous voulez notifier le dépôt amont qu'une balise doit être créée, vous devriez peut-être ajouter un commentaire à la demande de retrait expliquant cela.

31voto

Mathieu Dumoulin Points 7125

C'est un vieux post mais je suis tombé dessus en cherchant quelque chose de similaire, je vais vous donner une explication plus complète.

Les balises et les branches dans git sont appelées références ou "refs". Vous pouvez déplacer une référence quand vous le souhaitez vers un nouveau commit et ainsi créer des commits perdus si vous reculez dans le temps. Pire encore, ces commits pourraient être perdus au fil du temps s'ils sont élagués car ils attendent dans le vide.

Lorsque vous soumettez un PR, vous demandez en fait à quelqu'un de fusionner une liste de commits dans votre dépôt référencé par votre nom de branche (votre ref) avec une liste de commits dans un dépôt distant identifié également par un ref (la branche de base). Si vous avez des commits qui ne sont pas présents dans votre dépôt (vous n'êtes pas à jour) et que certains de vos commits touchent des endroits du code que vous n'avez pas de votre côté, alors une fusion doit être faite pour résoudre les conflits. Si vous n'êtes pas à jour mais que votre code ne touche pas ce qui a été modifié depuis, il n'y aura pas de conflit.

Enfin, lorsque des éléments sont fusionnés dans un autre dépôt, ils sont souvent écrasés pour sauvegarder l'historique des commits, ce qui crée un hash de commit complètement nouveau et une nouvelle arborescence de commits.

D'après ce que j'ai expliqué jusqu'à présent, les balises sont juste des références tout comme les branches. Si vous ouvrez un PR entre les références de deux dépôts qui sont des références de branches, alors il n'y a aucun moyen de créer un tag parce que vous ne créez pas de nouvelles références à la fin, vous demandez juste à quelqu'un de prendre vos commits dans son code et de déplacer la référence des branches de base vers le nouveau commit après que tout soit fusionné !

La meilleure et seule méthode consiste à demander au responsable de publier une version de son code en le balisant si c'est la façon dont il le fait, mais c'est à sa discrétion !

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