我已经看到的条目只显示修改的文件等与difftool,但有没有人找到一种方法,还没有显示新的文件?我仍然希望看到有人添加了什么作为提交的一部分,即使它是一个新文件,而不是一个修改。似乎difftool需要的是创建一个空的"虚拟"文件,这样像winmerge这样的工具就有了"diff"反对的东西。
我也在寻找您问题的答案,但在此之前我提供了一些变通方法。
您可以尝试 --dir-diff
选项,它工作得很好,但我更喜欢在单独的窗口中打开每个更改,而不是在目录中搜索,直到找到差异或新文件。
git difftool --dir-diff
另一个选项我一直在做的是使用winmerge修改文件和kdiff新的文件。
git difftool -t winmerge --diff-filter=M
git difftool -t kdiff3 --diff-filter=A
注意,以上假设您已经在.gitconfig
中相应地设置了不同的difftool
选项。
不是很好,但也是一个不错的解决方案。文档中有diff过滤器选项列表,StackOverflow上还有另一篇关于如何根据更改类型过滤git diff的文章。
我还在.gitconfig
中添加了这些别名,这样我就可以相应地输入git dtm
和git dta
了