2011-10-20 22 views
0

我正在寻找类似“git diff --name-only BA”的东西,但仅限于提交A中包含的文件。或换句话说,我需要一个列出所有使用提交A(不包括历史记录)更改的文件与承诺B(包括历史记录)不一样。查找与使用git提交B相比已更改的提交A的文件?

有没有一种简单的方法来做到这一点在混帐?

问候, 约亨

回答

1

可以使用--diff-filter option做到这一点。为了找到只修改AB之间的文件(而不是删除或添加,说),你可以这样做:

git diff --name-only --diff-filter=M B A 
+0

这会不会仍发现文件在那里被另一种修饰承诺比A? – Jochen

+0

也许我误解你的意思,但要澄清:这个命令将采取提交A中的文件集合,提交B中的文件集合,然后显示这两个集合中存在的文件列表,以及哪些是提交A和提交B不同。 –