如何查看工作目录和登台索引之间的差异?

时间:2015-03-28 16:09:23

标签: git git-diff

我们可以看到存储库和工作目录之间的区别:

git diff

我们可以看到存储库和分段索引与:

之间存在差异
git diff --staged

但我们如何看待工作目录和分段索引之间的区别?

3 个答案:

答案 0 :(得分:17)

实际上,git diff位于索引和工作树之间。只有在您对索引进行了阶段性更改(使用git add)之后,其内容才会与HEAD提交相同。

git diff HEAD介于回购和工作树之间。

请参阅365git.tumblr.com post

git diffs

答案 1 :(得分:1)

  • git diff -比较工作区域以编制索引。
  • git diff --staged -比较阶段与存储库。
  • git diff HEAD -比较工作区与存储库

为了说明这一点,我更改了一个带有“名称暂存”文本的文件,然后添加了它(git add。)。之后,我再次更改了文件,现在将文本替换为“ Name Working Area”,然后运行以下命令:

enter image description here

现在您可以清楚地看到它的工作原理。很酷吧?

答案 2 :(得分:1)

受到@VonC 接受的答案的启发,您还可以这样写:

git diff HEAD

这将打开一个目录差异,显示您的工作树和存储库之间的差异。从那里可以很容易地查看对单个文件的更改(例如,当使用像 Beyond Compare 这样的工具及其选项卡式 UI 时)。