'git diff':仅显示两个提交中存在的文件的差异

Rya*_*ndy 19 git

有没有办法用于git diff在两次提交之间获取差异,但只显示两次提交中存在的文件的差异?

我有一个我几周前创建的分支,而且我们的主要代码现在已经差不多了.结果,如果我在当前的HEAD和旧分支的尖端之间做差异,我会得到几十个已更改的文件,但它主要只是噪音.

我真的想看到一个diff,它只显示两个分支中存在的文件.我知道这样做的一种方法是在当前的HEAD之上挑选其他分支的提交,但有没有办法只使用它git diff

Mar*_*air 26

以下可能会做你想要的:

git diff --diff-filter=M commitA commitB
Run Code Online (Sandbox Code Playgroud)

M选项--diff-filter仅表示包含两个提交之间似乎被修改的文件 - 仅存在于一个分支或另一个分支中的文件将被选择为A("已添加")或D("已删除").

您可以通过以下操作查看使用这些字母代码选择的文件:

git diff --name-status commitA commitB
Run Code Online (Sandbox Code Playgroud)

...还有更多关于git diff文档中所有内容的信息.