查看提交日志

  1. git log

查看一段时间之内的提交日志

  1. git log --since="2021-10-1" --before="2021-12-31"

查看提交总数

  1. git log --oneline --no-merges | wc -l

查看一段时间之内某个人的提交日志

  1. git log --since="2022-1-1" --before="2022-12-31" --author="chenglining" --no-merges

查看一段时间内某个人的提交日志,并格式化输出格式

  1. git log --since="2022-1-1" --before="2022-12-31" --author="chenglining" --no-merges --date=short --pretty=format:"%ad %h %an %ae %s"

查看某个人在一段时间之内的代码增加、删除和总修改行数

  1. git log --since="2022-1-1" --before="2022-12-31" --author="chenglining" --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}'

查看代码提交次数排名

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

查看用户总数

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

统计所有用户某一段时间内的代码量

  1. git log --pretty='%aN' | sort | uniq -c | sort -k1 -n -r | awk '{print $2}' | while read name; do echo -en "$name\t=>";git log --since="2021-01-01" --before="2022-01-01" --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

今日代码量统计

  1. git log --pretty='%aN' | sort | uniq -c | sort -k1 -n -r | awk '{print $2}' | while read name; do echo -en "$name,"; git log --since="2021-01-01" --before="2022-01-01" --author="$name" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "%s,%s,%s \n", add, subs, loc }';done