git存储库中的版本数

git存储库中的版本数,git,git-log,Git,Git Log,请问,我如何计算在git存储库中编辑的行的总数?我正在尝试这条命令: git日志--oneline--shortstat 但它返回每个文件的版本数。我怎样才能知道总数?所有版本的添加?如何获得git存储库中的总行(插入+删除) 你可能想要 git diff --shortstat 如果希望在两次提交之间更改总行数,只需使用 git diff --shortstat $commit1 $commit2 然而,你的问题并不完全准确 鉴于以下情况: ,-- a -- b --, o-

请问,我如何计算在git存储库中编辑的行的总数?我正在尝试这条命令:

git日志--oneline--shortstat

但它返回每个文件的版本数。我怎样才能知道总数?所有版本的添加?如何获得git存储库中的总行(插入+删除)

你可能想要

git diff --shortstat
如果希望在两次提交之间更改总行数,只需使用

git diff --shortstat $commit1 $commit2

然而,你的问题并不完全准确

鉴于以下情况:

     ,-- a -- b --, 
o---x              m --o
     `-- c -- d --'
从某个提交
x
开始,有人在提交
a
中添加100行,然后在提交
b
中删除相同的提交。其他人在提交
c
时添加10行,在提交
d
时删除相同的10行。之后,
d
b
合并到commit
m
中。在这种情况下,
x
m
包含完全相同的文件

您希望更改的行数是多少

  • 0-因为文件仍然相同
  • 220-因为添加所有单个更改将导致此数字
  • 200或20-因为这些是每条路径上的更改
  • 有什么不同的吗
试着为你回答这个问题

如果您使用
0
使用
git diff--shortstat


如果您提出了
220
使用
git log--shortstat
并手动添加值。

按版本是指提交吗?你想要每次提交的所有编辑行的总和吗?所有git Repository中所有编辑行(每次提交)的总和我想你必须自己做,解析输出
git log--shortstat
并做数学如果我知道如何单独做,我不会问:)当然,但这是一个要写的脚本,也许没人会为你写(我不会,我在工作)。如果不指定任何参数,它将在工作树和索引之间的差异上工作,该差异可能为空。使用
git help diff
了解如何指定所需内容。如果我在第一次提交的同时提交最后一次提交,我将获得在所有git存储库中编辑的总行数?您将获得第一次提交和最后一次提交之间不同的行数。这不一定与编辑的总行数相同。