2015-07-02 2 views
2

У меня есть локальный репозиторий Git с 2 пультами. Каждый репо имеет 2 ветви, например:Делает ли Git Pull Merge изменения автоматически

+---------------------------------------------------------------------+ 
+ repo    | branches          + 
+ --------------------------------------------------------------------+ 
+ local    | master          + 
+      | development         + 
+ remote - origin  | master          + 
+      | development         + 
+ remote - live  | master          + 
+      | development         + 
+---------------------------------------------------------------------+ 

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

([email protected]) branch::master $ git pull live development 

Мой вопрос: делает, что одна команда тянуть изменения как мастер и развития?

Когда я оформляю оформление на местном уровне и git merge master, он говорит Already up-to-date. Как изменения попали в локальную ветвь развития?

ответ

3

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

Чтобы ответить на ваш вопрос напрямую, он НЕ вытягивает изменения как для мастера, так и для разработки, просто мастер.

От http://git-scm.com/docs/git-pull со ссылкой на мерзавец тянуть

мерзавец тянуть работает мерзавец выборки с заданными параметрами и вызывает GIT слияния, чтобы объединить извлекаемые ветви головы в текущей ветви.

+0

Спасибо за ваш ответ, я все еще не понимаю, как изменения попадают в локальную ветвь развития, не будучи вытащенными или объединенными? Если Git не потянет за собой изменения в локальном развитии, как получилось, вы просто потянули его, чтобы отразить ветку развития? Я буду исследовать соответственно. – Jongosi

+0

Сделайте это: посмотрите на свою ветку развития, проверьте свою основную ветку и сделайте тягу, затем снова проверьте свою ветку развития - код, который был там до того, как вытащить все равно, останется без изменений. – JDrost1818

+0

Правильно! Я, должно быть, допустил ошибку noob ... ветвь развития на локальном не обновляется. Thx куча! – Jongosi

Смежные вопросы