On Tue, Nov 1, 2011 at 04:49, Junio C Hamano <gitster@xxxxxxxxx> wrote: > Roland Kaufmann <rlndkfmn+git@xxxxxxxxx> writes: >> Would it be better to have yet another configuration available for >> this option instead of reusing the existing infrastructure for `git >> difftool`? > It probably is OK for "git diff --dirdiff" to use GIT_EXTERNAL_TREEDIFF if > and only if GIT_EXTERNAL_DIFF is not defined, and use GIT_EXTERNAL_DIFF > otherwise. People who have GIT_EXTERNAL_DIFF set to a tool capable of > handing directory pair can just add "--dirdiff" to the command line, and Did you perhaps mean the other way around: GIT_EXTERNAL_TREEDIFF if set, and GIT_EXTERNAL_DIFF otherwise? I will revise the patch to incorporate that, and at the same time fix the isempty function (it can be done simpler). >>> It also is not clear what could be used in "$@". Obviously you would >>> not want things like "-U20" and "--stat" fed to the first "list of >>> paths" phase, but there may be some options you may want to give to >>> the inner "external diff" thing. >> Ideally, it should work the same way as `git difftool`. > I am not so sure about that; difftool is another way to drive a tool one > filepair at a time. You want to drive a tool that takes them as two _sets_ > of files, one in each directory. I was thinking about the behaviour when you send options that are not applicable to files at all, such as "--stat". In that case, it just stops after `git diff`. Options that only applies to one file and not to a set have I admittedly not thought about (yet). -- Roland. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html