git diff来比较远程和本地分支什么都不做

时间:2016-12-01 19:15:17

标签: git

我试图查看本地主分支和远程源/主分支之间的差异。我在这里阅读了几个这样的问题并尝试了以下所有选项。

c:\>git diff master..origin/master

c:\>git diff origin/master master

c:\>git diff origin/master..master

c:\>git diff master origin/master

c:\>git log -p HEAD..FETCH_HEAD

沉默。什么都没有。

我在git fetchgit fetch origin之前和之后尝试过它们。要明确:我的本地分支与远程不同。 git diff显示了我的更改。

1 个答案:

答案 0 :(得分:3)

  

要明确:我的本地分支与远程不同。 git diff显示我的更改。

如果git diff显示更改,那么您的本地分支可能不同,因为您尚未提交甚至暂存您的更改。

git diff显示工作副本(即磁盘上的内容)与暂存区域之间的区别。各种标志改变了正在分化的东西。 git diff --staged显示了您上演的内容和HEAD之间的区别,它显示了即将发布的内容。

WORKING COPY           STAGING AREA                    HEAD
       <--- git diff --->     <--- git diff --staged --->

我做了a cheat sheet which illustrates this

因此,如果git diff显示您有更改,则这些更改尚未暂存或已提交。 git status应该确认。

要查看工作副本origin/master使用git diff origin/master的差异。