Git 比较所有本地未提交的更改

Git diff all local uncommitted changes

我有以下问题。我想从 git diff 获取输出,但对于所有未提交的本地更改(这意味着未暂存和已暂存的文件)。

我不是在搜索 git 日志或任何其他输出,它必须是 git diff 输出,因为那时我正在用我制作的解析器解析它。

现在我有:

所有未暂存的文件:

git diff

已暂存 + 未暂存文件 + 所有本地提交(与远程相比)

git diff origin/master

现在我错过了当我可以获得所有未暂存和已暂存文件的 git diff 时的部分,但不将其与远程进行比较(因为它也需要所有本地提交),而只是将其与上次进行比较本地提交。有办法吗?

摘自 this answer,一个类似的(但我不认为重复的)问题,我想你要找的是:

git diff HEAD

这将向您显示当前工作目录(即暂存和未暂存更改)与 HEAD 提交之间的所有差异。

或者 - 如果您更喜欢匹配问题中的语法,这将做同样的事情:

git diff master

(其中 master 是您当前的分支)。