按时段统计修改行数
git log --since=2020-05-28 --until=2020-11-28 --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }'
参数:查询某个人的
--author=xxx
管道方法:查询某些/个文件的修改行数
| grep "\(.js\|.css\|.html\|.py\)$"
参数:查询时间段
--since=2020-05-28 --until=2020-11-28
读取提交记录的提交用户,按空格排开打印出来
git log --format='%aN' | sort -u | while read name; do echo -en "$name\t"; done
该方法配合 git log 让–author="$name" 读取author值,可以按照提交的作者(非手动指定)来显示修改行数(显示行数是本文开头第一个方法)
即
git log --format='%aN' | sort -u | while read name; do echo -en "$name\t"; git log --author="$name" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }'; done
统计提交数
git log --oneline | wc -l
统计增加行数(从入库第一次修改开始)
git log --stat|perl -ne 'END { print $c } $c += $1 if /(\d+) insertions/'
例如:查询06.01到11.28增加的代码:
git log --since=2020-06-01 --until=2020-11-28 --stat|perl -ne 'END { print $c } $c += $1 if /(\d+) insertions/'