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