git diff-将索引与HEAD比较?暂存区和HEAD呢?

时间:2018-10-05 18:59:36

标签: git git-diff

所以我对此一直感到困惑。

默认情况下,git diff是否将indexHEAD进行比较?还是staging areaHEAD

假设git diff将索引与HEAD进行比较,我如何在暂存和HEAD之间而不是索引和HEAD之间运行git diff

2 个答案:

答案 0 :(得分:1)

什么?首先staging areaindex是相同的。然后,git diff将HEAD + index(可以这么说)与您的工作树进行比较。

答案 1 :(得分:1)

要将工作目录登台/索引进行比较,请使用:

git diff [--options] [--] [<path>…​]

这回答了问题我在此仓库中对文件进行了哪些更改?

要将分级/索引 HEAD 默认为 HEAD )进行比较,请使用:

git diff [--options] --cached [<commit>] [--] [<path>…​]
如果您更容易记住,可以使用--cached切换

--staged。在文档 index中,暂存和缓存都用来表示同一件事。

这回答了问题我的下一次提交将是什么样?

额外
要将工作目录 HEAD 进行比较,请使用:

git diff $(git rev-parse --short HEAD) [--] [<path>…​]