Проблемы, позволяющие участнику выдавать запрос на извлечение

#git #github

#git #github

Вопрос:

Я относительно новичок в GitHub и Git flow.

Я работаю над проектом, в котором я хотел бы быть рецензентом, и у меня есть участник, который отправляет запросы на извлечение для меня на проверку.

Пока мой участник:

  1. Разветвил мой репозиторий на его учетную запись
  2. Создал клон разветвленного репозитория на свой компьютер
  3. Создана новая ветка, содержащая обновления кода. Он может отправить эту ветку с кодом через: git push upstream contributor-created-branch-w-updates. Примечание: Upstream — это удаленный сервер, который соединяет клон на КОМПЬЮТЕРЕ участника (из форка) с исходным репозиторием в моей учетной записи GitHub.

Третий шаг генерирует push-уведомление в моей учетной записи (рецензент). Но тогда только я могу создать запрос на извлечение, учитывая, что опция отображается только в моей учетной записи. Мы попытались заставить участника обновить свой форк с помощью ветки «contributor-created-branch-w-update», а затем попытаться отправить запрос на извлечение из его форка в мой (исходный) репозиторий. Однако после попытки отправить свою ветку в свой собственный форк (через git push origin contributor-created-branch-w-update) он получает ошибку: fatal: текущая ветка contributor-created-branch-w-update не имеет восходящей ветки.

Как я могу попросить моего участника отправить запрос на извлечение, чтобы я затем проверил?

Ответ №1:

Насколько я знаю, это было бы сделано следующим образом:

  • другой человек подключает ваш репозиторий к своему репозиторию (в github)
  • они помещают изменения в ветку в своем репозитории github
  • Затем они создают запрос на извлечение в ваше репозиторий из своей разветвленной ветви репозитория.

И, учитывая, что это ваше репозиторий, вы единственный, кто контролирует, решая, что будет объединено, а что нет.

Комментарии:

1. Спасибо. Похоже, моя проблема связана со вторым пунктом, который вы упомянули. Если я могу спросить, как бы вы обычно справлялись с ситуацией, когда сотрудник вносит изменения в ветку в своем репозитории github, но затем их запрос на извлечение в мой репозиторий отклоняется. Каков наилучший способ для сотрудника, чтобы он не работал над кодом, который не будет включен?

Ответ №2:

Однако после попытки отправить свою ветку в свой собственный форк (через git push origin contributor-created-branch-w-update) он получает ошибку: fatal: текущая ветка contributor-created-branch-w-update не имеет восходящей ветки.

Потому что он сделал это неправильно. Он пропустил -u .

 git push -u origin branch
  

Затем пользователь может нажать, и теперь на GitHub пользователь увидит интерфейс для открытия запроса на извлечение с вами.

Комментарии:

1. Вопрос: разве при клонировании репозитория автоматически не настраивается репозиторий, который вы клонировали как удаленный с именем ‘origin’?

2. Зачем вам два пульта дистанционного управления? Вы являетесь владельцем первоначального репо. Это ваше origin . Именно у этого другого пользователя может быть два пульта дистанционного управления, но в этом нет необходимости, потому что его origin , форк, может отправлять вам запросы на извлечение.

3. Это сообщение подразумевает, что все хорошо. Используйте git status , чтобы быть уверенным. .

4. Спасибо тебе, @Мэтт. Изменения были, но, очевидно, под new_branch не master .

5. Да, вы должны знать, как на самом деле видеть , что происходит в GitHub. 🙂