为什么git pull
会提取包括新创建的远程分支在内的所有内容,但git pull origin master
不会?我正在使用git version 2.9.3.windows.2
。'git pull'的默认行为
回答
当您不指定分支时,将使用默认设置。默认意味着获取并更新全部分支存在于远程存储库中。
详细信息请参考文档:
git pull [options] [<repository> [<refspec>…]]
<refspec>
指定哪个裁判来获取和更新其本地裁判。如果在命令行上没有出现<refspec>
,取而代之的是从remote.<repository>.fetch
变量读取(请参阅git-fetch [1])。
引用的文档解释:
你经常通过定期和重复地从它的读取与相同的远程存储库交互。为了跟踪这样一个远程仓库的进度,git fetch允许你配置
remote.<repository>.fetch
配置变量。典型地,这样一个可变可能看起来像这样:
[remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/*
上面的例子将获取存在于
origin
(即refs/heads/*
匹配的值的左手侧,即,任何参考文献)中的所有分支和更新refs/remotes/origin/*
层次结构中的相应远程跟踪分支。
行为是默认的,因为它可以让你整个仓库在一次同步。如果您不想一次更新所有本地分支,请使用git fetch
同步存储库,并使用git merge origin/<branch>
更新每个本地分支。
它当你说不管任何挂钩git pull
一切,过滤器被添加到您当地是非常简单的
。总之,您可以从远程获取所有内容并更新.git
文件夹。你可以去文件夹.git/logs/refs/remotes/origin/
你会看到你在本地的所有分支。
所以,现在我从我的cmd键入git pull
。
幕布背后发生的事情与您当地的分支无关。它把原点连接起来,并从那里获得每一个到你的本地。
但是,当我输入git pull origin master
。在这里你给出了一个源头的路径规范,你需要一个最新的主分支。然后只有主人brach得到拉动和刷新,因为它是在远程
因此,origin master
是他们在git语言路径规定的路径规格。
- 1. git push/pull - 默认为github
- 2. git pull和git push的不同默认远程(跟踪分支)
- 3. 设置 - 仅作为git pull的默认值,但不适用于git合并
- 4. git pull认证后挂起
- 5. Git diff工具重置为git默认
- 6. 如何在默认情况下让git-pull成为详细信息?
- 7. 默认行为
- 8. 允许Apache执行git pull
- 9. 以纯PHP执行git pull
- 10. 为什么git pull origin master不能工作,但是git pull呢?
- 11. 如何调试:git pull在git pull期间挂起(allways为54%)
- 12. Git Hook for git pull
- 13. GitLab CI:git pull改为git clone
- 14. 丢弃git pull后,本地分支认为它是最新的
- 15. 运行docker pull时docker使用的默认url是什么?
- 16. git pull VS git fetch git rebase
- 17. 默认行为投
- 18. Makefile默认行为
- 19. git tf pull在
- 20. MATLAB git Pull
- 21. Git Pull Aborting
- 22. shell_exec和git pull
- 23. Git pull remote repo
- 24. git windows post pull
- 25. phpstorm git pull --rebase
- 26. git pull errors
- 27. git rebase after pull
- 28. Git pull change log
- 29. PhpStorm默认的git作者
- 30. maplotlib的默认行为imshow()
你能用外行语言来解释吗? – Thaadikkaaran
@JaganathanBantheswaran我试过了。请立即检查。另请注意,我正在回答_why_问题。如果您还有其他问题(_不能检查标题中的远程分支),请将实际的命令和错误消息粘贴到您的问题中。 – Melebius