ワンライナー書いてみました.

history | awk '{ print $2,$3 }' | grep '^git' | sort | uniq -c | awk '{com[NR]=$3;a[NR]=$1;sum=sum+$1} END{for(i in com) printf("%6.2f%% %s %s \n" ,(a[i]/sum)*100."%","git",com[i])}' | sort -gr 

実行結果です.

$ history | awk '{ print $2,$3 }' | grep '^git' | sort | uniq -c | awk '{com[NR]=$3;a[NR]=$1;sum=sum+$1} END{for(i in com) printf("%6.2f%% %s %s \n" ,(a[i]/sum)*100."%","git",com[i])}' | sort -gr
 32.93% git status 
 14.63% git diff 
 14.23% git add 
 11.79% git push 
 11.38% git commit 
  4.47% git reset 
  3.25% git rm 
  1.63% git pull 
  1.63% git log 
  1.22% git fetch 
  0.81% git clone 
  0.41% git tag 
  0.41% git stauts 
  0.41% git statuss 
  0.41% git statsu 
  0.41% git help 

status,diffは納得出来る. どうしてcommitよりもpushのほうが多いんだろうか... タイプミスは恥ずかしい.