git pull origin master和;git拉原点/主

git pull origin master和;git拉原点/主,git,version-control,Git,Version Control,git-pull-origin-master和git-pull-origin/master之间有什么区别?git-pull-origin-master将从origin远程、master分支提取更改,并将它们合并到本地签出分支 git pull origin/master将从本地存储的分支提取更改origin/master,并将其合并到本地签出分支。origin/master分支本质上是上次从origin中提取的内容的“缓存副本”,这就是为什么在git术语中它被称为远程分支的原因。这可能有点令人困

git-pull-origin-master
git-pull-origin/master
之间有什么区别?

git-pull-origin-master
将从
origin
远程、
master
分支提取更改,并将它们合并到本地签出分支


git pull origin/master
将从本地存储的分支提取更改
origin/master
,并将其合并到本地签出分支。
origin/master
分支本质上是上次从
origin
中提取的内容的“缓存副本”,这就是为什么在git术语中它被称为远程分支的原因。这可能有点令人困惑


您可以通过
git branch
git branch-r
查看哪些分支可用,以查看“远程分支”.git pull origin master

git pull origin master
将从远程主机分支获取所有更改,并将其合并到本地。我们通常不使用git pull origin/master。我们可以通过
git merge origin/master
执行相同的操作。它将合并“缓存副本”中的所有更改在我的例子中,
git pull origin/master
抛出错误。

git pull
=
git fetch
+
git merge origin/branch

git-pull
git-pull-origin-branch
的不同之处在于后者只“更新”origin/branch,而不是像
git-pull
那样“更新”所有origin/*

git-pull-origin/branch
将无法工作,因为它正在尝试执行无效的
git-fetch-origin/branch


相关问题:

如果是
git-pull-origin-master
它是否总是合并到master分支,假设我在repo中的另一个分支上,然后我执行上述命令,它会用origin-remote更改更新我的当前分支还是用更改更新我的master分支?@calmh:
git-merge
(因此,
git pull
)始终合并到当前分支。要与当前分支以外的其他分支合并,只需先查看它。嗯..我看不出“origin/master”与“origin-master”有什么不同;它们都是origin上的主分支。你能给出它们何时会不同的示例吗?
git pull origin/master
可能有写这篇文章时,它是一个有效的命令,但是现在(git 1.7.10.3)它失败了,因为
致命:'origin/master'似乎不是git存储库
(应该是这样的-pull总是用于从远程拖动)。为什么git如此混乱?我们总共有4个存储库,对吗?有一个(1)远程存储库,(2)本地存储库,(3)一个暂存存储库,(4)一个本地远程aka源/主存储库?为什么git会有#4存储库?calmh几乎涵盖了这一点,但非答案是,如果你想合并[本地存储的]远程分支
origin/master
,只需使用
git merge origin/master
@Jefromi:你能解释一下为什么git merge总是比git pull更好吗?
git pull
意味着
git fetch
,然后是
git merge
。它从远程获取内容,然后将其合并到当前的bra中nch.但
origin/master
是本地分支(跟踪远程分支)。如果你想合并它,你不需要提取任何东西。当你不是从远程设备提取时,说
git pull origin/master
,这是一种误导。感谢Jefromi提供的有用信息。这确实有助于理解非常容易理解的不那么容易的概念。对于那些阅读本文并仍感到困惑的人来说,
origin/master
本地存储的分支,在源远程缓存主分支。