В чем разница между git pull origin master
и git pull origin/master
?
git
version-control
Рейчел
источник
источник
git pull origin/master
. Если вы хотите объединить [локально сохраненную] удаленную веткуorigin/master
, просто используйтеgit merge origin/master
.git pull
значит сgit fetch
последующимgit merge
. Он извлекает контент с пульта, а затем объединяет его с вашей текущей веткой. Ноorigin/master
это локальная ветка (отслеживание удаленной ветки). Если вы хотите объединить это, вам не нужно ничего извлекать. Неверно говорить,git pull origin/master
когда вы на самом деле не получаете данные с пульта.origin/master
это локально хранящаяся ветвь, которая кэширует основную ветвь на удаленном источнике.Ответы:
git pull origin master
извлечет изменения изorigin
удаленногоmaster
филиала и объединит их с локальным извлеченным филиалом.git pull origin/master
извлечет изменения из локально сохраненной ветвиorigin/master
и объединит их с локальной извлеченной веткой.origin/master
Отрасль по существу «сохраненная копия» , что в последний раз вытащили изorigin
, поэтому он называется удаленный филиал в мерзавца жаргона. Это может быть несколько запутанным.Вы можете увидеть, какие ветки доступны с,
git branch
иgit branch -r
увидеть «удаленные ветви».источник
git pull origin master
если он всегда будет сливаться с основной веткой, скажем, я нахожусь в другой ветке в моем репо, а затем выполняю указанную выше команду, обновит ли моя текущая ветка исходными удаленными изменениями или моя основная ветвь с изменениями?git merge
(и поэтомуgit pull
) всегда сливается с текущей веткой. Чтобы объединиться с чем-то отличным от вашей текущей ветки, просто сначала проверьте это.git pull origin/master
Возможно, это была правильная команда, когда она была написана, но в настоящее время (git 1.7.10.3) она терпит неудачуfatal: 'origin/master' does not appear to be a git repository
(как и должно быть - pull всегда используется для извлечения из удаленных устройств).git pull origin master
Извлечет все изменения из главной ветки пульта и объединит их с вашим локальным. Обычно мы не используем git pull origin / master. Мы можем сделать то же самое с помощью.git merge origin/master
Он объединит все изменения из «кэшированной копии» главная ветка origin в вашу локальную ветку. В моем случаеgit pull origin/master
выкидывает ошибку.источник
git pull
=git fetch
+git merge origin/branch
git pull
иgit pull origin branch
отличаются только тем, что последний будет «обновлять» происхождение / ветвь, а не все origin / *, как этоgit pull
происходитgit pull origin/branch
просто не будет работать, потому что он пытается сделатьgit fetch origin/branch
недействительным.Вопрос по теме: git fetch + git merge origin / master против git pull origin / master
источник