summaryrefslogtreecommitdiff
path: root/git-difftool.perl
diff options
context:
space:
mode:
authorDavid Aguilar <davvid@gmail.com>2010-01-09 20:02:42 -0800
committerJunio C Hamano <gitster@pobox.com>2010-01-09 22:41:30 -0800
commit1c6f5b52b7b13bbc6cf404cb5ef9e64fda37655c (patch)
tree99d43713fe0d6097883ef9d254e263bcd3ea34a8 /git-difftool.perl
parent61ed71dcff8448b0700ef032aa1f962649306624 (diff)
downloadgit-1c6f5b52b7b13bbc6cf404cb5ef9e64fda37655c.tar.gz
difftool: Allow specifying unconfigured commands with --extcmd
git-difftool requires difftool.<tool>.cmd configuration even when tools use the standard "$diffcmd $from $to" form. This teaches git-difftool to run these tools in lieu of configuration by allowing the command to be specified on the command line. Reference: http://article.gmane.org/gmane.comp.version-control.git/133377 Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'git-difftool.perl')
-rwxr-xr-xgit-difftool.perl4
1 files changed, 4 insertions, 0 deletions
diff --git a/git-difftool.perl b/git-difftool.perl
index 8c836e4c76..f8ff245756 100755
--- a/git-difftool.perl
+++ b/git-difftool.perl
@@ -62,6 +62,10 @@ sub generate_command
$skip_next = 1;
next;
}
+ if ($arg =~ /^--extcmd=/) {
+ $ENV{GIT_DIFFTOOL_EXTCMD} = substr($arg, 9);
+ next;
+ }
if ($arg =~ /^--tool=/) {
$ENV{GIT_DIFF_TOOL} = substr($arg, 7);
next;