git log --full-diff是什么意思?

47
Git日志文档解释了参数--full-diff

具体来说:

如果没有这个标志,git log -p ...将显示触及指定路径的提交,并显示关于相同指定路径的差异。使用此标志,显示触及指定路径的提交的完整差异;这意味着“...”仅限于提交,并且不限制这些提交的diff。

请注意,这会影响所有基于差异的输出类型,例如由--stat等产生的输出。

我不知道它试图解释什么,可以有一个例子吗?

例子:假设我们有两个文件 file1.txt 和 file2.txt,这两个文件都在一个git代码库中。如果我们运行命令 "git log --follow file1.txt",那么默认情况下,它将显示更改过file1.txt文件的所有提交,并显示有关该文件的更改内容。但是,如果我们添加参数 "--full-diff",则除了显示更改过file1.txt的提交外,还将显示每个提交与所有其他文件之间的完整差异,而不仅限于指定文件。
1个回答

54

好的。假设您有一个提交 C,它对文件 A 和文件 B 进行了更改。

常规的 git log -p -- A 将显示所有涉及文件 A 的提交记录,并针对这些提交记录,它将显示对 A 的差异。 使用 --full-diff,它将显示相同的提交记录,但对于每个提交记录,它将显示该提交中所有更改文件的差异。在本例中,提交 C 的差异将显示文件 A 和 B 的差异。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接