git diff:许多补丁有三个' @'符号

时间:2016-12-22 14:35:34

标签: git diff git-diff git-show

我正在编写一个基于stripe-listify-buffer的自动工具,它依赖于git show命令。我写了一个小解析器,它将git show的输出作为要解析的文本,在大多数情况下,结果中的行以' @@'表示它将比较哪些行。

然而,我遇到了这样的情况:

git diff

这是什么意思?是否有可能会有更多(4个或更多)' @'具有更微妙含义的符号?

2 个答案:

答案 0 :(得分:1)

在我看来,你喜欢在合并中做一个节目,这个大块子不同于父母;这可能是解释吗?

答案 1 :(得分:1)

您正在以合并差异格式显示合并。如果您查看git show的手册页,它会有一个关于combined diff format的完整部分,使用时以及它的外观。同样在git show的初始描述中,它表示合并将显示为git diff-tree --cc,它也指合并的diff格式。

是的,可以有三个以上@个符号。每个父提交将有一个+ 1.因此,如果你有三个父母的合并(所谓的octupus合并),将有四个符号。如果你有四个父母,那么将会有五个有标志等等。