我正在尝试将emacs ediff用作git difftool。
我已经按照这里提出的一些配置进行了设置: 使用ediff作为git mergetool 当比较某个文件的不同git修订版本时,我完全没有问题:ediff工作正常,并且两个版本之间的差异被正确地描述。
然而,当我尝试运行git difftool来比较文件的当前目录版本与某个git修订版本时,我遇到了问题。 对于某些文件,我会收到以下错误:
apply: Wrong type argument: arrayp, nil
这很奇怪,因为这个错误只针对某些文件,而不是所有文件。
我已经尝试过几个文件,我认为经验法则如下: - 如果要比较的文件不放在git根目录中,则失败。 - 否则,ediff会毫无问题地显示文件的当前版本和指定修订版本之间的差异。
我已经按照这里提出的一些配置进行了设置: 使用ediff作为git mergetool 当比较某个文件的不同git修订版本时,我完全没有问题:ediff工作正常,并且两个版本之间的差异被正确地描述。
然而,当我尝试运行git difftool来比较文件的当前目录版本与某个git修订版本时,我遇到了问题。 对于某些文件,我会收到以下错误:
apply: Wrong type argument: arrayp, nil
这很奇怪,因为这个错误只针对某些文件,而不是所有文件。
我已经尝试过几个文件,我认为经验法则如下: - 如果要比较的文件不放在git根目录中,则失败。 - 否则,ediff会毫无问题地显示文件的当前版本和指定修订版本之间的差异。
我尝试了上面提到的一些配置,但它们都给了我同样的结果:当比较非根git文件的当前目录版本和某个git修订版本时,git difftool会失败。
有什么想法可以解决这个问题吗?
非常感谢。 -Bob