Добавление тегов в запрос на слияние

У меня есть репо iontech / Anagen, разветвленное от agiliq / Anagen

Я сделал несколько коммитов в своей вилке и добавил тег. Затем я открыл запрос на слияние. Этот запрос на слияние включает только мои коммиты.

Как включить созданный мной тег в запрос на слияние?


person Community    schedule 05.09.2012    source источник


Ответы (2)


Как включить созданный мной тег в запрос на слияние?

Вы не можете. Запрос на вытягивание не включает теги. Запрос на перенос - это всего лишь указатель на поток коммитов (ветку) в вашем репозитории, который вы предлагаете объединить в другой репозиторий.

Если вы хотите уведомить вышестоящий репозиторий о том, что тег должен быть создан, возможно, вам стоит добавить комментарий к запросу на перенос, объясняющий это.

person nulltoken    schedule 05.09.2012
comment
Просто любопытно, что могло быть причиной такого ограничения? (Если случайно вы оказались одним из сотрудников службы поддержки github?) - person Raghav RV; 01.12.2015
comment
Запрос на вытягивание содержит только коммиты. - person nulltoken; 01.12.2015
comment
Что ж, тег предназначен для этого запроса на слияние, верно? Почему это важно, если запрос на слияние содержит только коммиты? (Я просто пытаюсь осознать это решение) - person Raghav RV; 02.12.2015
comment
Можно добавить тег к фиксации в собственном репозитории. Запрос на вытягивание ссылается только на верхушку ветки (т. Е. На последнюю фиксацию). Таким образом, тег не будет встроен в запрос на слияние. - person nulltoken; 02.12.2015
comment
Я пытался создать тег после слияния запроса на перенос, но он попал под старый тег? - person R11G; 08.03.2019
comment
Это прискорбно. Я не вижу возможности запросить у сопровождающего репозитория новый тег (или выпуск). Если в репозитории не используется средство отслеживания проблем, единственный вариант - напрямую связаться с сопровождающим, если они предоставили способ связаться с ним. Недостатком git является то, что теги нельзя отслеживать так же, как коммиты. - person Juan; 08.05.2021

Это старый пост, но я наткнулся на него в поисках чего-то похожего, дам более полное объяснение.

Теги и ветки в git называются ссылками или «ссылками». Вы можете переместить ссылку в любое время в новую фиксацию и, таким образом, создать свободные фиксации, если вы переместитесь назад во времени. Хуже того, эти коммиты могут быть потеряны со временем, если их удалить, потому что они ждут в пустоте.

Когда вы отправляете PR, вы фактически просите кого-нибудь объединить список коммитов в вашем репозитории, на который ссылается ваше имя ветки (ваш ref), со списком коммитов в удаленном репозитории, идентифицированном также ссылкой (базовая ветка). Если у вас есть коммиты, которых нет в вашем репозитории (вы не обновлены), и некоторые из ваших коммитов действительно касаются тех мест кода, которых у вас нет на вашей стороне, то для разрешения конфликтов необходимо выполнить слияние. . Если вы не обновлены, но ваш код не касается того, что было изменено с тех пор, конфликта не будет.

Наконец, когда что-то объединяется в другой репозиторий, часто оно будет сжато, чтобы сохранить историю коммитов, создав полностью новый хэш коммитов и новую древовидную структуру коммитов.

Как я уже объяснял, теги - это просто ссылки, как и ветки. Если вы открываете PR между ссылками на два репозитория, которые являются ссылками на ветки, тогда нет возможности создать тег, потому что в конце вы не создаете никаких новых ссылок, вы просто просите кого-то перенести ваши коммиты в свой код и переместить базовые ветки ссылаются на новую фиксацию после того, как все слито!

Лучшим и единственным методом действительно становится попросить сопровождающего выпустить релиз для его кода, пометив, если они это делают, но это на их усмотрение!

person Mathieu Dumoulin    schedule 07.08.2017
comment
Технически это все еще возможно, но сложно реализовать? Как будто Github мог придумать какой-то рабочий процесс слияния тегов или разрешение конфликтов тегов и т. Д., Но это просто в настоящее время не построено, да? - person Zorayr; 05.05.2020