调用git difftool
存储库时,git会将本地存储库中的已修改文件与远程文件中的匹配项进行比较。要做到这一点,它为远程的临时文件,设置变量LOCAL
和REMOTE
取工具在Git的配置的差异列表中指定和调用。
默认情况下,在中创建临时文件/tmp/<hash>_filename
。是否可以更改此默认位置?
长话短说,我正在通过Windows子系统在Linux上使用git,我想使用Windows工具进行差异和合并。问题是,/tmp
无法从Windows端访问,因此我需要将git创建临时文件的默认位置移动到Windows可以访问的位置。
到目前为止,我所能找到的只是一个建议,sudo mount -B /tmp /mnt/c/tmp
但这似乎不起作用(/tmp
仍然指向以前的目录...)
您可以尝试设置TMPDIR
环境变量。
从POSIX手册中:
TMPDIR
该变量应表示目录的路径名,该目录可用于需要放置临时文件的地方的程序。
快速浏览git代码(git/builtin/difftool.c
)之后,我认为当前不支持配置temp目录:
/* Setup temp directories */
tmp = getenv("TMPDIR");
xsnprintf(tmpdir, sizeof(tmpdir), "%s/git-difftool.XXXXXX", tmp ? tmp : "/tmp");
好像git正在使用该TMPDIR
值"/tmp"
,如果TMPDIR
未定义,则为。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句