title: Configuring multiple git mergetool and difftool so that appropriate tool will be chosen based on extension
body: <p>When I do git difftool, recursively it runs default difftool for all files. I wrote a script to choose appropriate difftool based on extension and I call like git difftool -t mytool in the script. difftool redirects all arguments to new call, which is good. However, it somehow redirects all file names as well. So basically, my script becomes useless since custom difftool is passed with all files that is changed. </p>
  
  <p>What I want to do is, limit difftool to one file, or at least call my diftool with one file, not the rest. Basically, this is my script and I have this as the default difftool in .gitconfig. </p>
  
  <pre><code>if is_sbs $1 $2 ; then
      #custom difftool which is also defined in .gitconfig
      git dt -t rhapsody 
  else
      #for all files
      git dt -t kdiff3 
  fi
  </code></pre>