这些文件不一定受版本控制。
仅供参考:我在windows xp上使用git和git gui。
答案 0 :(得分:10)
除非一个或两个文件位于git存储库之外,否则您需要使用--no-index选项:
git diff --no-index path/to/file.txt path/to/other/file.txt
您也可以使用具有相同参数的git difftool来调用GUI工具。
答案 1 :(得分:6)
是的,git diff
适用于两个未版本化的路径,包括文件和目录(递归差异)。我认为你不能从gui做到这一点;你需要使用命令行。
如果您想要GUI,我建议您安装kdiff3。它也可以被git用作合并工具,而不是设置diff.tool = kdiff3
,diff.guitool = kdiff3
和difftool.kdiff3.path =
路径到kdiff3.exe
答案 2 :(得分:1)
在git bash中你可以只使用 diff file1 file2
使用tortoisegit - 选择两个文件,右键单击选择tortoisegit并单击diff。
答案 3 :(得分:0)
您不仅可以使用git diff
(使用git diff --no-index -- file1 file2
来执行此操作,现在也可以使用git difftool
来执行此操作(2019年第二季度Git 2.22)!
在过去两年中这是不可能的。
“ git difftool
”现在可以在存储库外部运行。
请参见commit 20de316的commit 1a85b49,commit 1dcda05,Johannes Schindelin (dscho
)(2019年3月14日)。
(由Junio C Hamano -- gitster
--在commit b72e907中合并,2019年4月25日)
在Git工作树之外运行
difftool
:允许使用--no-index
据开发人员所知,从Perl脚本转换为 一个内置函数导致difftool不再运行 在Git工作树之外(当然还有
--no-index
)。退休后花了两年多的时间,这有点令人尴尬 Perl版本可以发现这种回归,但是至少我们现在知道了,并且 可以为此做些事情。