

Original difftool by directories script (December 2009)Īs Seba Illingworth mentions in his answer, a script git-diffall.sh (also put in the path) can do just that: #!/bin/sh See Patch difftool: teach difftool to handle directory diffs, and the answer Directory comparison of Git branches for more details. Git difftool learned the -dir-diff option to spawn external diff tools that can compare two directory hierarchies at a time after populating two temporary directories, instead of running an instance of the external tool once per a file pair. Update June 2012 (2-and-a-half years later):Ĭomparing directories instead of file-by-file will be available soon: If you want git diff to launch WinMerge, just set: set GIT_EXTERNAL_DIFF=winmerge.shīut the real added value comes from the ability to use that same diff tool to present all differences in one batch instead of presenting them sequentially, forcing you to close the diff tool windows one file at a time.

(see WinMerge Command-line options) git difftool $PROGRAMFILES/WinMerge/WinMergeU.exe -e -u -dl Local -dr Remote $1 $2 With winmerge.sh stored in a directory part of your PATH: #!/bin/sh The first part (using winmerge) is described in How do I view ‘git diff’ output with visual diff program? C:myGitRepo>git config -replace -global diff.tool winmergeĬ:myGitRepo>git config -replace -global winmerge.sh $LOCAL $REMOTEĬ:myGitRepo>git config -replace -global difftool.prompt false Git 2.5+ (Q2, 2015) is now aware of Winmerge as a diff or merge tool! I'd appreciate any helpful insights on the matter.As detailed in git mergetool winmerge, a simple git config diff.tool winmerge will be enough. I tried different configurations that didn't work so I was hoping someone here has encountered the same problem and knows how to fix it. However, if I start the merge from Git GUI > right click > "Run Merge Tool", I get the following error: "Could not start the merge tool couldn't execute "winmerge": no such file or directory"

When I start my merge with bash, it launches winmerge as expected and merges without any problems. gitconfig is configured as follows: prompt = false keepBackup = false keepTemporaries = false tool = winmerge name = WinMerge.l cmd = 'C:/Program Files (x86)/WinMerge/WinMergeU.exe' -u -fm -wl -wr "$LOCAL" "$MEGED" "$REMOTE" Recently, I have encountered a roadblock that I can't seem to fix in the form of using git GUI to do a conflict merger using winmerge. I've started adding custom tools like deleteTag, whereIsOrigin, checkoutSingleFile, etc. I guess that's a win for our community!īut now, since all employees (not only devs) will use git, then I am now tasked to optimize Git GUI to be as non-techy-friendly as possible. Hi, so my company finally decided to move to git from perforce helix core.
