有没有简单的方法来计算Git中两次提交之间更改的行数?
我知道我可以做一个git diff,并数行,但这似乎很乏味。我还想知道如何做到这一点,在行计数中只包括我自己的提交。
有没有简单的方法来计算Git中两次提交之间更改的行数?
我知道我可以做一个git diff,并数行,但这似乎很乏味。我还想知道如何做到这一点,在行计数中只包括我自己的提交。
当前回答
对于懒惰的人,使用git log——stat。
其他回答
Git diff——stat将重复计算修改的行。如果这对你来说是个问题,你可以这样做:
git diff | diffstat -Cm
这将给您相同的输出,除了它将[尝试]区分添加+删除的行和修改的行。
关于上次提交的简短统计信息:
git diff --shortstat HEAD~1 HEAD
在我的例子中,这给了我以下信息:
254 files changed, 37 insertions(+), 10773 deletions(-)
插入和删除是受影响的行。
git diff --stat commit1 commit2
EDIT:您还必须指定提交(如果没有参数,它将工作目录与索引进行比较)。如。
git diff --stat HEAD^ HEAD
比较HEAD和HEAD的父类。
该命令将比较本地文件和远程文件
git diff --stat
另一种获取指定时间段内所有更改日志的方法
git log --author="Tri Nguyen" --oneline --shortstat --before="2017-03-20" --after="2017-03-10"
输出:
2637cc736 Revert changed code
1 file changed, 5 insertions(+), 5 deletions(-)
ba8d29402 Fix review
2 files changed, 4 insertions(+), 11 deletions(-)
对于较长的输出内容,您可以将其导出到文件以获得更好的可读性
git log --author="Tri Nguyen" --oneline --shortstat --before="2017-03-20" --after="2017-03-10" > /mnt/MyChangeLog.txt