如何仅针对当前修改的文件查看与另一个分支的 git 差异?

How do I look at the git differences from another branch, for only the currently-modified files?

通常当我进行基线测试时,我想看看测试产品相对于合并父产品有什么变化,但那时我不想查看所有差异。 (即,我不想看到代码,或者我已经在分支的早期变更集中完成的测试。)

如何将差异缩小到仅当前修改的文件?

git diff --name-only HEAD | xargs git diff <branch-or-commit> --

当你运行这个时,你必须在存储库的根目录中。

一个选择是

git diff <branch> -- $(git diff --name-only)

这有一个限制,您必须 运行 它在根目录中才能正确解释路径。

如果你不想要这个限制,你可以使用 sed 和 xargs

git diff --name-only HEAD | sed 's/^/:\/:/' | xargs git diff <branch-or-commit> --