git log统计用户提交代码的行数

一、首先你必须具有Linux服务器登录的权限,

(1)22端口登录用户具有root级别的权限

(2)每次执行命令前,必须cd到git的仓库地址目录下,否则命令报错,无返回结果

二、执行命令

1、根据用户名时间段统计(其中,--author对应的是仓库中现存在的git账户)

git log --author="username" --since=2018-01-01 --until=2019-12-31 --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 }' 

2、查看提交者排名前n位(  -n  后边的数字是具体排名)

git log --pretty='%aN' | sort | uniq -c | sort -k1 -n -r | head -n 5

3、提交数统计

git log --oneline | wc -l

4、根据用户名统计(此命令,返回结果是git账户名称、新增行数、删除行数、总计,总计= 新增 - 删除,可能出现负值)

git log --author="username" --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 }' 

5、根据时间段统计(since、until控制时间周期)

git log --since=2020-01-01 --until=2021-02-04 --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 }'

6、统计每个人的增删行数(命令4 去掉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 ", add, subs, loc }' -; done

7、贡献者统计

git log --pretty='%aN' | sort -u | wc -l

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值