gpt4 book ai didi

混帐庆典 : Can't spawn kdiff3 as difftool

转载 作者:太空狗 更新时间:2023-10-29 14:45:57 26 4
gpt4 key购买 nike

我正在尝试在 Windows 8.1 系统上的 Git Bash 中使用 KDiff3 作为 difftool,我承认我对 Git 很陌生。当我尝试将暂存文件与提交文件进行比较时,我无法打开 KDiff3,而且我对如何处理它感到困惑。我在网上找到了将 KDiff3 设置为 merge 工具的说明,我想我需要做一些类似的事情来将它设置为 diff 工具(我还没有能够为新手找到足够明确的指导来设置 diff 工具,这就是我来这里的原因)。这是我在下载并安装 KDiff3 后所做的:

 git config --global diff.tool kdiff3
git config --global difftool.kdiff3.cmd '"C:\\Program Files\\KDiff3\\kdiff3" $BASE $LOCAL $REMOTE -o $MERGED'

Git 没有向我吐出任何错误,所以也许这是正确的?我完全承认我不明白这里的语法!无论如何,当我尝试这个时:

 git diff HEAD

我明白了:

 error: cannot spawn kdiff3: No such file or directory
external diff died, stopping at MyFile.R

我环顾四周,看到一些人在 $PATH 设置不正确时遇到了类似的问题。我真的不知道 $PATH 是什么(如果有人能启发我,我将非常感激),但我为 KDiff3 (C:\Program Files\KDiff3\kidff3) 获得的路径肯定是kdiff3.exe 在我的机器上的位置。有什么建议吗?

提前致谢,正如我所说,我是 Git 的新手,所以如果我没有提供一些重要信息,请告诉我。

最佳答案

我建议你放弃你的第二行配置,因为 Git bash 已经定义了如何使用 kdiff3。 (你可以看看你安装的Git Bash,比如我的路径下,可以找到C:\Program Files (x86)\Git\libexec\git-core\mergetools\kdiff3,就是kdiff3的配置文件) .您唯一需要做的就是将 kdiff3 放入您的 PATH 变量中。

只使用你的第一行:

git config --global diff.tool kdiff3

但不是你的第二行:

#### comment out this line:
# git config --global difftool.kdiff3.cmd '"C:\\Program Files\\KDiff3\\kdiff3" $BASE $LOCAL $REMOTE -o $MERGED'

要修复你已经添加的配置,请尝试在你的 GIT BASH 下编辑你的 .gitconfig

vim ~/.gitconfig

找到 [difftool "kdiff3"] 部分,然后删除该部分下带有 cmd= 的行。您也可以删除整个部分(即也删除包含 [difftool "kdiff3"]

的行

然后将您的路径添加到 kdiff3:

PATH=$PATH:"/c/Program Files/KDiff3"

由于“程序”和"file"之间的空格,需要双引号。

此 PATH 行可以添加到您的 .bashrc 或 .bash_profile,具体取决于您启动 bash 的方式...

---更新---

更正:由于 Git Bash 使用 Windows 系统定义的环境变量“PATH”+ Windows 用户定义的环境变量“PATH”。上述 PATH 更改更难(使用 .bashrc 等)。只需更改 Windows 环境变量,如 this link , 和/或 this link

关于混帐庆典 : Can't spawn kdiff3 as difftool,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27262781/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com