提交到git中的SLOC含义是什么?

3

我有一个文件,里面有一系列的提交ID,我想编写一个脚本来计算每个提交中的代码行数。最简单/最好的方法是什么?我已经写了几行Python代码,但我也可以使用其他语言。

1个回答

2

使用--numstat(用于每个文件的更改)或--shortstat(用于更改总和)作为git showgit loggit diff-tree的参数。

例如,在bash中:

while read sha; do
  git diff-tree --shortstat $sha $sha^
done

请注意,各种 diffstat 标志可以传递给几乎任何检查提交的 git 命令,但它们只在 git-diff-tree 的 man 页面中记录。

这会告诉我提交之间的行数吗?我需要知道每个提交添加了多少行。就像如果你将提交下载为一个补丁文件,那么这个补丁文件会添加多少行呢? - undefined
这就是diffstat的意思。插入的数量和删除的数量。 - undefined
谢谢,当我只提供一个sha时,它运行得很好。这仍然需要一些后处理,但我预料到了这一点。 - undefined

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