Git:列出另一个分支中不在当前分支中的所有文件?

Ama*_*nus 6 git

git diff <other branch> <this branch> 
Run Code Online (Sandbox Code Playgroud)

将显示所有差异,但当前分支中不存在的文件在该列表中没有特殊指示符。

小智 8

我想像你想要的那样使用“--diff-filter”标志:

git diff --diff-filter=[D|M|A] branch1 branch2
Run Code Online (Sandbox Code Playgroud)

作为:

  • D:仅对分支 1 中存在的文件进行排序。
  • M:排序文件已被修改
  • A:只对 branch2 中存在的文件进行排序。

您可以同时使用所有这些,也可以使用“ --stat”标志快速查看更改。


小智 5

SO 上也有完全相同的问题

你可以用它git diff-tree来实现你想要的

用于-r递归地下降子树并将--diff-filter输出限制为仅某些类型的差异(例如,deletions=D)

git diff-tree -r --diff-filter=D branchA branchB