Git diff --stat解释

时间:2011-08-11 11:14:07

标签: git diff diffstat

Git's pull output在这里得到了相当好的解释。尽管如此,我仍然不确定文本图的确切含义。

例如:

git diff --stat master HEAD^

输出(截断):

Site/index.php | 118 ++--

虽然修改的行数清楚地显示为118,但文本图表有点难以解释。

这可能与添加和删除的行的比率有关吗?

3 个答案:

答案 0 :(得分:32)

是的,它是添加和删除行的比例。

另见:

man diffstat

答案 1 :(得分:23)

git diff --numstat "@{1 day ago}"

<强>参数:

  • diff =显示差异
  • --numstat =显示插入和删除的行数
  • @{1 day ago} =期间。

输出

0   1   WebContent/WEB-INF/tags/Grid.tag
38  30  ant/build.xml
  • 第1列(包含0 38)=已插入
  • 第2列(包含1 30)=已删除

PS:列由制表符(\t)分隔。

答案 2 :(得分:8)

我回答here

它应该反映列出的每个文件的更改量(以行为单位) 添加的标志,删除的减少。

118 给出更改的行数, - / + 为您提供删除/添加的比例。
如果更改的数量符合一行,您就会得到&#39; + &#39;另外,&#39; - &#39;每次删除;
否则,这是近似值,例如

CHANGES.txt     |   47 +++++++++++++++++++++++++++++++++
make-release.py |   77 +++++++++++++++++++++++++++++++++++++++----------------
2 files changed, 102 insertions(+), 22 deletions(-)

CHANGES.txt上,因为您可以看到没有&#39; - &#39;以及47&#39; + & #39;你有很多比例的(即100%)很多 在make-release.py,您会看到 x39 &#39; + &#39;代表55个新增内容和 x16 &#39; - &#39;代表22次删除。
正如它们的比例,以及适合输出屏幕的数量。

符合线宽的GCD倍的每行符号数量。

希望有所帮助。