2010-04-28 11 views
18

Projeye taahhüt veren her bir yazarın çıktısını aldığı bir komut ya da komut dosyası hakkında bilgi sahibi olur.Git - Yazar tarafından işlenen satır sayısını görmenin bir yolu var mı?

örn. aşağıdakine benzer bir şey: sadece HTML çıktısı üretir olsa

Author  Insertions Deletions 
Bob Dole  1240   409 
Sarah J  481   140 
Jim Helper 388   23 

Alkış, Ben

+0

Bu muhtemelen 'git-blame' çıkışında üzerinde basit bir awk/sed komut dosyası ile gerçekleştirilebilir. http://www.kernel.org/pub/software/scm/git/docs/git-blame.html –

cevap

5

git shortlog -sne

+1

Bu cevabımda da bahsetmek üzereydim, bana yumruk atıyorsun. –

+40

Bu satır sayısını söylemez! –

+2

Bu harika bilgiler de, ancak yazar sayısına göre satır sayısını değil, yazdırma sayısını yazdırır. –

4

hızlı bir arama GitStats kazılıp.

Güncelleme: Biraz daha fazla kazma, aradığınız şeylerin çizgileri boyunca görünen LookAtGit.

İkinci Güncelleme: Orijinal soruya bir yorumda da belirtildiği gibi, bu, sed/awk ile birlikte git ile de yapılabilir. SO üzerinde right here'un nasıl yapılacağına dair güzel bir örnek var.

+0

Ama bu açık bir kaynak, bu yüzden istediğiniz herhangi bir çıktı formatı üretebilmeniz için ... –

+4

Doğru Önceden bir senaryoyu sormayacağını sanıyordum, eğer kendini bir kere kırbaçlamak için zamana sahip olsaydı. –

6

Bu, belirli bir yazar için hat istatistiklerini verir:

git log --author="_Your_Name_Here_" --pretty=tformat: --numstat \ 
| gawk '{ add += $1 ; subs += $2 ; loc += $1 - $2 } END { printf "added lines: %s removed lines : %s total lines: %s\n",add,subs,loc }' - 
+0

Cevabınızı tüm yazarların çıktı istatistiklerine genişletebilir misiniz? – mrgloom

+0

@mrgloom, bu işe yarayacak: 'okurken; git günlüğü yap --author = "$ i" --pretty = tformat: --numstat | {printf "$ i:"; gawk '{add + = 1 $; subs + = 2 $; loc + = 1 $ - 2 $} END {printf "eklenmiş satırlar:% s kaldırılan satırlar:% s toplam satır:% s \ n", add, subs, loc} '-; }; done <<(git shortlog -sne | sed 's/[^ <]*<\([^>] * \)>/\ 1 /' | sırala -u) –

İlgili konular