#提交数统计
$ git log --oneline | wc -l
#统计所有代码行数
$ git log --stat|perl -ne 'END { print $c } $c += $1 if /(\d+) insertions/'
#统计本人代码行数
$ git log --author="$(git config --get user.name)" --pretty=tformat: --numstat | gawk '{ add += $1 ; subs += $2 ; loc += $1 - $2 } END { printf "added lines: %s removed lines : %s total lines: %s\n",add,subs,loc }' -
#统计某人(zhangsan)代码行数
$ git log --author="zhangsan" --pretty=tformat: --numstat | gawk '{ add += $1 ; subs += $2 ; loc += $1 - $2 } END { printf "added lines: %s removed lines : %s total lines: %s\n",add,subs,loc }' -
#统计本人代码行数,排除文件夹src/utils
$ git log --author="$(git config --get user.name)" --pretty=tformat: --numstat -- . ":(exclude)src/utils" | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %sn", add, subs, loc }' -
网友评论