我不明白这个优点。我已经看到它在诸如this article这样的地方争辩说,取而代之为提取让你有机会在将它们合并到你的本地分支之前检查这些变化。
但是,在那篇文章中,作者使用git diff master origin/master
来检查新获取的分支中所做的更改,方法是将其与当地主分支进行比较。
这是我感到困惑的地方....无论你是否先取得这个命令,该命令都会起作用。无论哪种方式,它都在比较本地主人和远程主人。您无需获取将本地分支与远程分支进行比较。
我错过了什么?
答案 0 :(得分:6)
您遗漏git fetch
用于更新远程分支的本地副本。
因此,您提到的命令会在本地分支diff
与master
的本地副本之间执行origin/master
,而不是原始master
分支的实际状态。
fetch
将连接到远程服务器并下载远程服务器的所有更改(分支,标签等更改)。
与往常一样,git manual on Branching and Remote Branches解释得很清楚。
答案 1 :(得分:-4)
fetch
是一个较低级别的命令;例如,pull
就此而言。在大多数情况下,您可能无法直接使用它。