git统计代码量

https://www.shuzhiduo.com/A/RnJWeV0gdq/ 

同类文章有很多,这篇较为美观

git命令行统计

//替换username,查看个人代码量
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 }' -

//统计每个人增删行数
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

//提交者排名前5
git log --pretty='%aN' | sort | uniq -c | sort -k1 -n -r | head -n 5

//贡献值统计
git log --pretty='%aN' | sort -u | wc -l

//提交数统计
git log --oneline | wc -l

//添加、修改行数
git log --stat|perl -ne 'END { print $c } $c += $1 if /(\d+) insertions/'

 

GitStats更丰富

GitStats项目,用Python开发的一个工具,通过封装Git命令来实现统计出来代码情况并且生成可浏览的网页。官方文档可以参考这里。

对于Git开发,有一些可视化的工具,如gitk,giggle等,来查看项目的开发历史。但对于大型的项目,这些简单的可视化工具远远不足以了解项目完整的开发历史,一些定量的统计数据(如每日提交量,行数等)更能反映项目的开发进程和活跃性。GitStats就是这样的工具,它能生成以下统计数据,并以图表形式进行对比

  • 常规的统计:文件总数,行数,提交量,作者数。
  • 活跃性:每天中每小时的、每周中每天的、每周中每小时的、每年中每月的、每年的提交量。
  • 作者数:列举所有的作者(提交数,第一次提交日期,最近一次的提交日期),并按月和年来划分。
  • 文件数:按日期划分,按扩展名名划分。
  • 行数:按日期划分。

GitStats网址:http://gitstats.sourceforge.net/

安装依赖包:Git,Python,Gnuplot。

使用:

  • ./gitstats /mnt/src/git/project ~/public_html/project (Git项目在/mnt/src/git/project下,生成的统计数据放在~/public_html/project目录下)
  • firefox ~/public_html/project/index.html (用firefox查看统计数据)

GitStats提供的一些例子,如Linux Kernel的统计数据(http://gitstats.sourceforge.net/examples/linux-2.6/index.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值