Я не уверен, но у меня есть смутное воспоминание о создании запроса на github pull с «Issue 4» или чем-то в заголовке, и он автоматически присоединяется к Issue 4 в проекте, в который я отправлял его. Недавно я попробовал еще раз, и это не сработало - вместо этого он создал новую проблему. Я не вижу никаких параметров, таких как «Прикрепить к проблеме» на новой странице запроса на извлечение или «Открыть новый запрос на извлечение для этой проблемы» на странице проблемы. Есть ли способ сделать это, чтобы помочь владельцам проектов содержать в чистоте свои страницы «Проблемы» и избежать дублирования?
Изменить : чтобы уточнить, я знаю, что создание запроса на получение всегда создает новую проблему. Я хотел бы вместо этого прикрепить запрос на удаление к существующей проблеме.
источник
Ответы:
Проект "хаб" может сделать это:
https://github.com/defunkt/hub
В репозитории и филиале, из которого вы хотите отправить запрос на извлечение:
При этом используется API GitHub и присоединяется запрос на извлечение для текущей ветви к существующей проблеме № 4.
РЕДАКТИРОВАТЬ: Комментарий @atomicules: Чтобы расширить ответ @MichaelMior, полный пример:
источник
brew install hub
установить с помощью homebrewhub pull-request URL_TO_ISSUE
, тогда это сработало для меня. Интересно,-i ISSUE_NUMBER
работает ли это только в том случае, если проблема находится в том же хранилище (т.hub pull-request -b USERNAME_OF_UPSTREAM_OWNER:UPSTREAM_BRANCH -h YOUR_USERNAME:YOUR_BRANCH URL_TO_ISSUE
Добавить запрос на удаление к существующей проблеме в апстриме легко, если вы разветвляетесь, используя обычные средства github .
Просто укажите проблему в сообщении о коммите, используя любое из поддерживаемых ключевых слов :
Например: «этот коммит исправляет # 116»
Текст, ссылающийся на проблему, не обязательно должен отображаться в строке темы вашего коммита.
Вставьте ваш коммит в репозиторий github, и запрос на извлечение будет автоматически добавлен к проблеме.
Примечание. Хотя это и не требуется, настоятельно рекомендуется фиксировать все, что будет частью запроса на удаление, в отдельную ветку, специфичную для этой проблемы, поскольку будущие фиксации в этой ветви будут добавляться к запросу на извлечение (автоматически github). ). Итак, если вы не создали отдельную ветку, оставили ее на master, а затем продолжили разработку, то все ваши несвязанные коммиты на master будут добавлены к вашему запросу на извлечение.
источник
Вы можете создать запрос на извлечение из существующей проблемы с помощью API запроса на извлечение :
Это создает запрос на извлечение:
technoweenie
в проектеfaraday
(https://api.github.com/repos/ technoweenie / Фарадей / тянет)synchrony
ветки вsmparkes
'fork ("head": " smparkes : synchrony ")master
ветку вtechnoweenie
's fork' ("base": " master ")smparkes
удаление (--user " smparkes ")источник
--user "smparkes:password"
к--user "smparkes"
интерактивному запросу на ввод пароля.Другим возможным инструментом является веб-сайт Issue2Pr, который превращает ваши проблемы в запросы на извлечение .
Это очень просто и эффективно!
Ресурсы:
источник
Этот другой ответ объясняет, как использовать cURL (
curl
) для создания запроса на извлечение из проблемы через API GitHub . Вот как это сделать, используя HTTPie (http
), который создает более удобную для чтения и редактирования команду:Затем введите пароль GitHub, когда будет предложено.
Объясненный пример
Вы вошли в GitHub с именем пользователя smparkes и паролем hunter2 . Вы видели фарадейский репо Technoweenie , подумали о том, что следует изменить, и сделали для этого репо « Проблема № 15» . Позже вы обнаружите, что никто не внес предложенное вами изменение, и у вас также есть время, чтобы сделать это самостоятельно. Вы раскошелиться Фарадеем на свой собственный счет , а затем написать свои изменения и подтолкнуть их к вилке под ветвью с именем синхронности . Вы думаете, что technoweenie должен потянуть эти изменения на мастерафилиал его репо. Это команда, которую вы бы написали, чтобы преобразовать ваш предыдущий выпуск в запрос на извлечение для этой ситуации:
Теперь проблема № 15 - запрос на извлечение.
источник
в случае, если вы используете 2-factor-auth с github, вам нужно будет указать authtoken в качестве заголовка в запросе:
источник
Вы также можете использовать Gub для отправки запросов на удаление по вашей проблеме.
Это также помогает вам использовать правильный стиль fork / pull-request.
Изменить: 5/5/2013
Чтобы Gub отправил pull-запрос на выпуск № 123, вам нужно выполнить следующее:
Это создаст новую ветку вопроса-123. Как только вы закончите работать над проблемой, выполните:
Вуаля!
Примечание: я являюсь автором Gub Gem.
источник
Вместо того, чтобы делать это на стороне клиента (с помощью
hub
, как в ответе Кристиана Оударда ), вы теперь (февраль 2020 года) можете сделать это на стороне сервера (github.com)См. « Просмотр и связывание проблем и получение запросов с боковой панели »
Документация :
И есть API поиска с этой функцией.
источник
Используя инструмент git-hub , вы можете сделать это с помощью:
$> git hub pull attach 123
Это преобразовало бы проблему № 123 в запрос на извлечение № 123, тем самым поддерживая все обсуждения проблемы в одном месте.
источник
Если у вас включен 2FA, вы можете использовать токен с HTTPie:
Это будет использовать ветку
issue_2
для преобразования проблемы № 2 в запрос на извлечение.источник