1. 程式人生 > >三分鐘教你學Git(十六)

三分鐘教你學Git(十六)

有時候想統計倉庫的情況,比如程式碼量,貢獻者之類的。

1 統計某人的commit數量

git log --author="$(git config --get user.name)" --oneline | wc -l

2 統計某人的程式碼量

git log --author="$(git config --get user.name)" --pretty=tformat: --numstat | awk '{adds += $1; subs += $2; all += $1 + $2} END {printf "added lines: %s removed lines : %s all lines: %s\n",adds,subs,all}'

3 提交排名top 10

%aN代表只顯示commit的author name。也可以使用%ae,使用author email,防止出現重名的情況。然後按照名字或者email排序,之後uniq的時候數count,之後按照第一列的值按照number的方式排序,最後取前10條記錄。

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

4 統計有多少個程式碼貢獻者

sort -u 等於 sort | uniq

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

作者:hongchangfirst