I've seen the entries on only showing modified files etc. with difftool but has anyone found a way yet to also show the new files? I still want to see what someone added as part of the commit, even though it's a new file and not a modification. Seems like what difftool needs is to create an empty 'dummy' file so that tools like winmerge have something to 'diff' against.
I too seek the answer to your problem, but I offer some workarounds until that happens.
You may be able to try the --dir-diff
option, which works alright, but I prefer each change opening in a separate window than having to trawl through directories until I find a difference or a new file.
git difftool --dir-diff
Another option I've been doing is to use winmerge for modified files and kdiff for new files.
git difftool -t winmerge --diff-filter=M
git difftool -t kdiff3 --diff-filter=A
Note that the above assumes you've setup the different difftool
options in your .gitconfig
accordingly.
Not exactly great, but also not a bad workaround. A list of diff filter options is in the documentation, there's also another post here on StackOverflow regarding how to filter git diff by type of change.
I've also actually just added these as aliases in the .gitconfig
so that I can just type git dtm
and git dta
accordingly.
来源:https://stackoverflow.com/questions/33258545/git-difftool-winmerge-with-new-files