Git 統計提交代碼行數
阿新 • • 發佈:2018-08-21
-a 模塊 num code name auth echo 底層 awk
指定用戶名
git log --author="your_name_here" --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
這裏的 added lines 是指增加的行數
這裏的 removed lines 是指移除的行數
這裏的 total lines 是指合計
由於 Git 對於大的二進制對象文件支持得不好,二進制大對象與大文本文件是不同的。
Git 對於不透明的二進制文件起不了多大作用,只能把它當作一個大的實體黑盒來提交。所以是不會計入行數的。
又由於 git 的機制是基於文本文件行來記錄的,比如我們平常修改一行代碼就是 一加 一減。
這個時候,合計就可以體現出有多少行代碼是你真的 “新建” 的。
關於我在這公司的一年,重構了好幾個小模塊,也開發了一些小模塊。
下面是合計的值:
emmmm
居然有四十多萬行。
Leader 平常只負責架構底層和緊急救火,居然寫了 51 萬行代碼。
下一次提加薪就靠這個了。
Git 統計提交代碼行數