1

在 Windows 上运行git difftool -d <commit> <commit>会打开 WebStorm 差异工具,但内容会在它启动后立即消失。

尝试了 trustExitCode、提示和bat 文件

[diff]
        tool = webstorm
[difftool "webstorm"]
        cmd = \"C:/Users/<me>/AppData/Roaming/JetBrains/WebStorm 2018.1.2/bin/webstorm64.exe\" diff \"$LOCAL\" \"$REMOTE\"
4

1 回答 1

0

发生这种情况是因为 JetBrains WebStorm 已经打开,因此 diff 被传递给现有实例并且 diff 命令返回。一旦它返回,git 就会进行清理,然后内容就消失了。

解决方案:

  1. 在 diff 之前关闭 WebStorm。只有在不使用 WebStorm 进行编辑时才有用。
  2. 用 sleep 或 按住 shell cmd //c "pause"。关闭差异窗口后,返回 shell 并按 Ctrl+c。或者将 difftool 启动为git difftool -d <commit> <commit> &.

    • cmd = \"C:/Users/<me>/AppData/Roaming/JetBrains/WebStorm 2018.1.2/bin/webstorm64.exe\" diff \"$LOCAL\" \"$REMOTE\" && sleep 3600

Mac 上的类似问题:使用 IntelliJ 作为 git mergetool 总是在启动后立即退出

于 2019-01-22T22:43:25.427 回答