根据此处的文档和各种答案, git difftool 将调用指定的可执行文件(通常是 shell 脚本),并将环境变量 LOCAL 和 REMOTE 设置为文件路径。但是当我尝试时,没有设置 LOCAL 和 REMOTE。我尝试了以下测试:
git config --global diff.tool mytest
git config --global difftool.mytest.cmd mytest.sh
git config --global difftool.prompt false
使用 mytest.sh:
#!/bin/sh
echo "LOCAL:$LOCAL REMOTE:$REMOTE"
调用:
git difftool --tool mytest <commitid> -- <path-to-file>
输出:
LOCAL: REMOTE:
有什么建议么?