Подтвердить что ты не робот

Git Запрос Pull vs Pull

Я новичок в использовании Git, поэтому прошу прощения, если это тривиально. У меня есть частный репозиторий, настроенный с помощью Github и EGit.

В обновить и объединить ветку локального репозитория с удаленной версией (по существу, git pull), я использую Team > Pull в Eclipse.

Чтобы объединить ветку в основную ветвь, я должен запросить и затем одобрить запрос Pull в Github.

В чем разница между вызовом git pull и отправкой запроса на перенос?

Я видел, что это связано с моделью совместной разработки Fork и Pull и используется для обзоров кода. Я думаю, что я понимаю мотивацию и полезность запроса на растяжение, но что это такое?

4b9b3361

Ответ 1

Если вы используете git pull, вы извлекаете изменения из удаленного репозитория в свои.

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

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

(Как примечание, если вы новичок в Git, я бы предложил использовать git fetch, а затем git merge вместо git pull. git pull эффективно git fetch, за которым следует git merge, но выполнение их отдельно дает вам лучший контроль над потенциальными конфликтами.)

Ответ 2

Запрос на перенос запрашивает у поддерживающего репозитория git pull в некоторых изменениях (как уже говорит название). GitHub предоставляет дополнительный простой в использовании интерфейс, упрощающий просмотр такого запроса.
Вам не нужно использовать его для объединения в какой-либо ветки. Но вы можете использовать его, и может быть полезно перепроверять, готовы ли все изменения к объединению. Если вы не хотите или нуждаетесь в дополнительной безопасности, вы можете просто git merge ветки.


git сам также имеет команду, которая создает запрос на перенос, предназначенный для использования в списках рассылки. Вы можете запросить генерацию с помощью команды git request-pull. На самом деле требуется передать запрос на вытягивание для некоторых проектов, используя эту команду! Результат команды похож на этот (сделанный с официальной домашней страницы git):

$ git request-pull origin/master myfork
The following changes since commit 1edee6b1d61823a2de3b09c160d7080b8d1b3a40:
  John Smith (1):
        added a new function

are available in the git repository at:

  git://githost/simplegit.git featureA

Jessica Smith (2):
      add limit to log function
      change log output to 30 from 25

 lib/simplegit.rb |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

Ответ 3

Git Pull

Удаленный репо ======> локальное репо

git pull = Git Fetch + Git Merge

Запрос на тягу

Это вещь Github.

Удаленный репозиторий Github <======== Запрос извлечения от ===== вашего репозитория Github

Примет ли сопровождающий удаленного репозитория github ваш запрос на получение или нет, зависит от нее.