2015-09-22 2 views
4

git pull Я думал = git fetch + git mergeПочему git pull не тянет вновь созданную ветку, которая была нажата на удаленный?

Это хорошо на некоторое время, чтобы тянуть изменения в удаленных филиалах, пока сталкиваясь с ситуацией, когда в git pull не тянет вновь созданный филиал. Вновь созданная ветвь, я имел в виду, что «кто-то еще» только что создал новую ветку и нажал на удаленный, и я попытался сделать git pull, но я не получаю новую ветвь в свой список удаленных филиалов.

Мне удалось получить эту вновь созданную ветку только после того, как я сделал git fetch, а затем git merge.

Вопрос: Так означает ли это, всегда делать git pull только тогда, когда вы хотите, чтобы тянуть изменения существующей отрасли, и сделать git fetch + git merge, когда вы хотите, чтобы тянуть вновь созданный филиал?

Edit:

Благодаря @uDaY. Теперь я понимаю, как это сделать в git bash. Но интересно, хотим ли мы сделать это из Eclipse IDE, как мы можем уведомить утилиту Eclipse git pull выполнить git pull -all вместо стандартного git pull? Есть предположения?

Update1: Игнорируйте его, я отправлю как новый вопрос.

Update2: 09/23/2015 Ну, другой вопрос не нужен, я понял. Здесь,

Прицепные основном принести + сливаться

Так что если вы не определить, что выборка должна действительно принести, вы не можете ожидать тянуть тянуть, что вы собираетесь тянуть!

Это означает, что в eclipse Поскольку вы не можете настроить pull, вам необходимо настроить 'Fetch'. т.е. правой кнопкой мыши на

project-> Team-> Remote-> Настройка Fetch от разведки и добычи

. Посмотрите, определено ли какое-либо отображение в 'refmappings'. Безотносительно, перейти к Advanced и новое окно будет всплывающее , который говорит: «Настройки Fetch» - Fetch Ref спецификация-Select рефов для извлечения Убедитесь, что у вас есть Источник реф как «ссылки/руководители/» и целевая работе как «refs/remotes/origin/» и флажок «Обновление силы», как отмечено.

Я также сделал один дополнительный шаг, выбрав в раскрывающемся списке для «Источник исх:» и взял новое имя ветви, например: newbranch, выбора выпадающего меню для «назначения исх:» и подобрала имя нового филиала, например: origin/newbranch, и нажмите «+ Добавить Spec», и нажмите «Закончить». Теперь Сохранить it.

В заключение сделайте тянуть.

ответ

4

Git pull по умолчанию не извлекает все ветви. Если вы хотите, чтобы вытащить все ветви с помощью Git тянуть вам нужно сделать

$ git pull --all

см

git pull [options] [<repository> [<refspec>…​]]

Значения по умолчанию documentation

для <repository> и <branch> считываются из " remote "и" merge "для текущей ветви, как установлено git-branch [1] --track.