I have been working on the builtin difftool for a little over a week, for two reasons: 1. Perl is really not native on Windows. Not only is there a performance penalty to be paid just for running Perl scripts, we also have to deal with the fact that users may have different Perl installations, with different options, and some other Perl installation may decide to set PERL5LIB globally, wreaking havoc with Git for Windows' Perl (which we have to use because almost all other Perl distributions lack the Subversion bindings we need for `git svn`). 2. Perl makes for a rather large reason that Git for Windows' installer weighs in with >30MB. While one Perl script less does not relieve us of that burden, it is one step in the right direction. This pair of patches serves two purposes: to ask for reviews, and to show what I plan to release as part of Git for Windows v2.11.0 (which is due this Thursday, if Git v2.11.0 is released tomorrow, as planned). The second patch really only explains how I will make sure that the builtin difftool will only affect users who want to opt in to testing. Johannes Schindelin (2): difftool: add the builtin difftool: add a feature flag for the builtin vs scripted version .gitignore | 2 + Makefile | 1 + builtin.h | 1 + builtin/builtin-difftool.c | 680 +++++++++++++++++++++++++++++++++++++++++++++ git-difftool.perl | 7 + git.c | 21 ++ 6 files changed, 712 insertions(+) create mode 100644 builtin/builtin-difftool.c base-commit: 1310affe024fba407bff55dbe65cd6d670c8a32d Published-As: https://github.com/dscho/git/releases/tag/builtin-difftool-v1 Fetch-It-Via: git fetch https://github.com/dscho/git builtin-difftool-v1 -- 2.10.1.583.g721a9e0