查看提交日志
git log
查看一段时间之内的提交日志
git log --since="2021-10-1" --before="2021-12-31"
查看提交总数
git log --oneline --no-merges | wc -l
查看一段时间之内某个人的提交日志
git log --since="2022-1-1" --before="2022-12-31" --author="chenglining" --no-merges
查看一段时间内某个人的提交日志,并格式化输出格式
git log --since="2022-1-1" --before="2022-12-31" --author="chenglining" --no-merges --date=short --pretty=format:"%ad %h %an %ae %s"
查看某个人在一段时间之内的代码增加、删除和总修改行数
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}'
查看代码提交次数排名
git log --pretty='%aN'|sort|uniq -c|sort -k1 -n -r|head -n 5
查看用户总数
git log --pretty='%aN'|sort -u|wc -l
统计所有用户某一段时间内的代码量
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
今日代码量统计
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