git difftool
似乎在 Windows 上感到困惑。如果添加了新文件,Git 会将“\.\nul”作为“左”文件发送到 diff 工具。
要重现这一点:
{create a new file}
git add .
git difftool --staged
现在,WinMerge(或您正在使用的任何查看器)启动,但报告左侧路径 ("\.\nul") 无效。
多年来,此问题已在 SO 上多次报告。例如,这是完全相同的问题:
但是,上述问题(以及所有其他问题)中公认的解决方案对我来说根本不起作用。现在我们已经到了 2020 年,是否有官方的解决方法来解决这个问题?
Mercurial 从来没有遇到过这个问题。它向差异查看器发送有效路径并完美运行。我很惊讶在 Git 上遇到这个问题。