git rev-list --branches --parents |
while read hash parents; do
# $hash is a commit; it has $parents as its parents
set -- $parents
for p do # loop over all of $hash's parents
git diff $p $hash --stat -- $pathlimiters
done
done | awk '/files changed, / { print }'
2条答案
按热度按时间mv1qrgav1#
这里是一个尝试的起点,虽然可能还有更多的工作要做:
输出将包含许多行,格式如下:
修改
awk
代码(或者用您喜欢的任何语言编写代码),以找到插入和删除计数并将它们相加。您可能还需要为根提交添加一个特殊情况(当
$parents
为空时),其中您将与the empty tree进行比较。63lcw9qa2#
我使用这个简单的bash方法来计算git统计(
Commits
,Additons
,Deletions
):它可以被称为:
gitstats "author name"