I'm trying to perform my first Git merge ever (exciting!), but can't get Git Gui (0.13.GITGUI from Git 1.7.4.msysgit.0) to recognize TortoiseMerge (1.6.11.20210 x64) on Windows 7. Based on an answer to a similar question, I've made the following configuration changes:
$ git config --global merge.tool tortoisemerge
$ git config --global mergetool.tortoisemerge.cmd 'TortoiseMerge.exe -base:"$BASE" -mine:"$LOCAL" -theirs:"$REMOTE" -merged:"$MERGED"'
$ git config --global --list
...snip...
merge.tool=tortoisemerge
mergetool.tortoisemerge.cmd=TortoiseMerge.exe -base:"$BASE" -mine:"$LOCAL" -theirs:"$REMOTE" -merged:"$MERGED"
$
Unfortunately, when I start Git Gui and attempt to "Run Merge Tool", I receive the error Unsupported merge tool 'tortoisemerge'
.
Can anyone tell me what I've done wrong? Here's the relevant sections of my ~/.gitconfig
:
[merge]
tool = tortoisemerge
[mergetool "tortoisemerge"]
cmd = TortoiseMerge.exe -base:\"$BASE\" -mine:\"$LOCAL\" -theirs:\"$REMOTE\" -merged:\"$MERGED\"
Update
TortoiseMerge works fine with the above config when running git mergetool
from the command line. It seems that only Git Gui has problems with it. :-/
This issue appears resolved in the latest git (I have
git version 1.9.4.msysgit.1
).For the case that I was working on, the mergetool was already set to tortoisemerge, but it could not find it.
Providing a fully qualified location worked in Windows:
If you have the latest git, run this command line once:
git config merge.tool tortoisemerge
Important: Do not add a
.exe
extension to the command.If that fails, or if you want to add a different merge tool that git doesn't know about, do this:
Open one of the following in an editor:
C:\Program Files\Git\mingw64\share\git-gui\lib\mergetool.tcl
C:\Program Files (x86)\Git\share\git-gui\lib\mergetool.tcl
Add something like this to mergetool.tcl:
Put the new tortoisemerge entry above this other code:
Bonus example:
To use SourceGear diffmerge, add this to mergetool.tcl:
Try typing
TortoiseMerge.exe
from the command line to make sure it's in the path. If not add it via My Computer > Properties > Advanced > Environment Variables > System Variables:Path.Then from command prompt configure it via the following commands
To use it from the command prompt, type
git difftool
from your within your git working directory.It shows the files one at a time so you're still better off installing TortoiseGit which makes things easier to handle, even if just for the diff part.
Try this:
Source: http://programmersunlimited.wordpress.com/2010/07/01/getting-git-to-use-tortoisemerge/