什么是git diff origin master应该做什么?

时间:2014-03-07 20:22:52

标签: git diff

从一个git分支,我的一位同事跑了

git diff origin master

应该做什么? origin分别指向什么?

这是相关的,但没有涉及 In Git, what is the difference between origin/master vs origin master?

5 个答案:

答案 0 :(得分:4)

这种形式的git diff只需要两个修订说明符,如gitrevisions中所述。

在这种情况下,origin最有可能与第6项匹配:

  

的6。否则, refs/remotes/<refname>/HEAD 如果存在。

所以这意味着与git diff origin/HEAD master相同:将origin/HEAD解析为commit-ID,将master解析为commit-ID,并对两次提交进行区分。

执行命令

git rev-parse origin

了解解决方案的工作原理。

答案 1 :(得分:2)

相当于

git diff origin/HEAD master

答案 2 :(得分:2)

显示原点/ HEAD和主分支之间的变化。 您可以使用以下命令实现相同的功能:

  • git diff origin / HEAD master
  • git diff origin / HEAD..master

通常,origin指向您克隆存储库的源。

答案 3 :(得分:2)

“origin”指向“remote”,通常是您从中克隆存储库的位置,  见

$ git remote -v show

但是特别是回答你的问题“git diff origin master”是等价的。对此:

$ git diff origin/HEAD master 

origin / HEAD到远程HEAD引用指向的分支。这是最后拉出的检查分支。

看看你的提交图,它会显示你所有引用的位置(--decorate)

$ git log --oneline --graph --all --decorate

答案 4 :(得分:1)

这取决于......如果originmaster是分支,则显示它们之间的差异。在查看解释时,他们通常使用origin代表原始(上游,官方,无论)分支,并master代表您正在处理的分支。即,“告诉我原始版本的变化。”