External diff not working

75 views
Skip to first unread message

Phillip Susi

unread,
Mar 9, 2022, 9:15:22 AM3/9/22
to git-for-windows
I'm running git version 2.28.0.windows.1 on Windows and trying to set it
up to run winmerge as the external diff tool.  I am pretty sure I used
to do this following the instructions here:

https://igorsgames.wordpress.com/2015/05/28/using-winmerge-as-an-external-diff-tool-in-gitk/ [1]

When I point gitk to the batch file and try to open the external diff
tool, nothing happens.  Winmerge does not open, nor do I get an error
from gitk.  I noticed the next box below on the preferences screen
contains "cmd /c" so I tried prefixing the path to the batch file with
that, and instead I get an error that says:

cmd /c C:/Program Files/WinMerge/winmerge.bat: command failed: couldn't
execute "cmd \c C:\Program Files\WinMerge\winmerge.bat": no such file or
directory.

Why does nothing happen in the first case, and why in the second case is
gitk apparently changing regular slashes into back-slashes before
trying to pass the string directly to CreateProcess as the name of the
executable binary, rather than to a shell or ShellExecute or something that parses the arguments?

Also I just tried having the batch file echo something to a text file to
see if it was running at all or if winmerge just isn't opening, and the
text file ( full path to my home directory to make sure permissions
aren't a problem ) isn't created, so the batch file isn't executing even
though there is no error given by gitk.
Reply all
Reply to author
Forward
0 new messages