git pull origin master
和git pull origin/master
之间的区别是什么?
答案 0 :(得分:301)
git pull origin master
将从origin
远程master
分支中提取更改,并将其合并到本地签出分支。
git pull origin/master
将从本地存储的分支origin/master
中提取更改并将其合并到本地签出分支。 origin/master
分支本质上是最后从origin
中提取的“缓存副本”,这就是为什么它被称为git用语中的远程分支。这可能有些令人困惑。
您可以查看git branch
和git branch -r
可用的分支,以查看“远程分支”。
答案 1 :(得分:1)
git pull
= git fetch
+ git merge origin/branch
git pull
和git pull origin branch
的不同之处仅在于后者将仅“更新”起源/分支,而不是像git pull
那样“更新”所有起源/*。
git pull origin/branch
只会因为它试图执行无效的git fetch origin/branch
而无法正常工作。
与问题有关:git fetch + git merge origin/master vs git pull origin/master
答案 2 :(得分:0)
git pull origin master将从远程主机的master分支中获取所有更改并将其合并到本地。我们通常不使用git pull origin / master,我们可以通过git merge origin / master来做同样的事情。它将合并所有从Origin的master分支的“缓存副本”到您的本地分支的更改。在我的情况下git pull origin / master抛出错误。