CLI与其他客户端之间的'git diff'不一致

时间:2011-04-08 02:58:41

标签: xcode git version-control diff

我正在尝试获取已更改/已添加/已删除/等的列表。我的Git存储库中提交的文件。当我在shell中运行以下命令时,这是输出:

Indragie$ /usr/bin/git diff --name-status 0836
D       INPopoverController.h
D       INPopoverController.m
D       INPopoverControllerDefines.h
D       INPopoverWindow.h
D       INPopoverWindow.m
D       INPopoverWindowFrame.h
D       Images/blue_progress_slice.png
M       Images/next.png
M       Images/pause.png
M       Images/play.png
M       Images/previous.png
D       Images/progress_left_cap.png

当我检查Xcode(或任何其他第三方Git客户端)的更改列表时,我看到了:

Xcode diff http://cl.ly/2i3P3s0m0i3I10110h3E/Screen_Shot_2011-04-07_at_8.59.18_PM.png

显然,这些只是较大列表的摘录,但重点是它们完全相同。我已经验证了我正在查看的提交的SHA1哈希在CLI git和Xcode中是相同的。我是git的新手,所以可能有一些相当明显的我做错了,但即使在翻阅man page和git教程之后,我似乎无法找到我出错的地方。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:3)

你确定你在看同样的事情吗?

git diff <commit-id>将向您显示当前工作树与提交时树之间的差异,而不是该提交引入的更改。

git show会向您显示提交的更改。