Replace visual studio 2012 Diff tool with winmerge when using Microsoft Git Provider

I have a Visual Studio 2012 v3 and git extensions installed.

I want to change the default merge tool to winmerge but it seems that this is not a trivial task when Microsoft Git Provider is chosen.

  • Can't push local changes to an existing remote branch
  • What should Xcode 6 gitignore file include?
  • Jenkins on Openshift cannot clone repo
  • GIT - Rewriting core code on a separate branch
  • What should I put in a meteor .gitignore file?
  • Why can't a branch name contain the 'space' char?
  • When i go to VS -> Tools -> Options -> Source Control I have only Plug-in-Selection tab and cannot choose configure tools to change to WinMerge.

    Screenshot

    Is there any way of using Git Extensions with WinMerge inside VS2012?

  • Make git ignore the date in PDF files
  • How do I enabled “include tags” on a push by default in TortoiseGit?
  • Best git like versioning tool for many small files
  • Git : Determine if branch is in a merge conflict state
  • TortoiseGit - change default merge message
  • How to tell TeamCity to treat merges as a single commit when working with git?
  • One Solution collect form web for “Replace visual studio 2012 Diff tool with winmerge when using Microsoft Git Provider”

    Backed up by that DZone-article, the trick is to configure the diff-tool in git.config:

    1. Open the git bash in your repository
    2. Create a config section for WinMerge as a diff-tool:

      $ git config --local difftool.winmerge.cmd '"C:\Program Files (x86)\WinMerge\WinMergeU.exe" "$LOCAL" "$REMOTE"'
      
    3. Configure git to switch to WinMerge as the diff-tool:

      $ git config --local diff.tool winmerge
      

    If you want to have this setting as a global setting, replace the --local switch with --global.

    Git Baby is a git and github fan, let's start git clone.