Ответ 1
Оба Git (программное обеспечение) и GitHub (веб-служба) имеют концепцию под названием "запрос на pull" и, к сожалению, они не совсем то же самое.
Нативный Git
Нативная команда Git request-pull
имеет очень короткую страницу руководства со следующим описанием одного предложения:
Обобщает изменения между двумя коммитами на стандартный вывод и включает заданный URL в сгенерированную сводку.
Это довольно низкоуровневая команда, которая генерирует краткое описание изменений, подходящих для публикации в список рассылки. Другие пользователи могут использовать URL-адрес, опубликованный в этом "запросе на pull", чтобы вручную вносить изменения в свой собственный репозиторий.
Запросы GitHub Pull
При использовании веб-службы GitHub запрос Pull Request является полнофункциональным интерактивным инструментом совместной работы. Запрос на загрузку GitHub имеет:
- более подробное описание изменений, чем только отдельные сводки о фиксации
- уведомления автоматически отправляются пользователям, которые выбрали для просмотра проект
- интерактивный интерфейс просмотра, в котором другие могут комментировать предлагаемые изменения.
- комментарии для обсуждения разговоров о коммитах
- центральное управление запросами на загрузку, чтобы они не потерялись.
Стоит отметить, что Линус имеет собственное мнение относительно относительной полезности этих двух функций.
Заключение
Две описанные выше функции "pull request" аналогичны по духу, но совершенно различны в реализации. В частности, команда git request-pull
не может использоваться для создания нового запроса Pull на GitHub. У вас есть несколько вариантов, если вы хотите поддерживать функциональность типа "запрос запроса":
- Используйте GitHub. Это определенно связано с наименьшими усилиями, но если ваш проект не является общедоступным, вам придется заплатить GitHub за размещение частного репозитория. Некоторым людям может не понравиться этот выбор.
- Используйте Gerrit. Gerrit - это программа с открытым исходным кодом, которую вы можете загрузить, которая предоставляет множество функций, подобных тем, которые доступны в GitHub. Это особенно хорошо подходит для совместной проверки кода.
- Используйте
git request-pull
и список рассылки. Использование этого метода требует от ваших инженеров гораздо большей дисциплины, так как легко сбрасывать или пересылать сообщения списка рассылки. Центральная подотчетность, связанная с этим методом, отсутствует.