Git'te bir projeye katkıda bulunan tüm kullanıcıları (taahhüt eden kullanıcılar) listelemek mümkün mü?
Ek istatistikler var mı?
Git'te bir projeye katkıda bulunan tüm kullanıcıları (taahhüt eden kullanıcılar) listelemek mümkün mü?
Ek istatistikler var mı?
Yanıtlar:
Tüm kullanıcıları ve e-postaları ve CURRENT kolundaki taahhüt sayısını göstermek için:
git shortlog --summary --numbered --email
Ya da sadece:
git shortlog -sne
Tüm şubelerden (yalnızca geçerli şubede bulunanları değil) kullanıcıları göstermek için --allbayrak eklemeniz gerekir :
git shortlog -sne --all
-e.
--allbayrak eklemelisin
git shortlog --summary --numbered <pathToFile>
Listede daha spesifik olmak istiyorsanız (benzersiz yorumcu ve yazarların bir listesini bulun), şunları kullanabilirsiniz git log:
git log --pretty="%an %ae%n%cn %ce" | sort | uniq
%an yazar adı%ae yazar e-postası%n Yeni hat%cn komünist adı%ce committer emailDiğer yer tutucular, 'ın oldukça basılı belgelerinde açıklanmaktadırgit log .
%n(hat tabanlı) ile çok fazla bir anlam ifade sortetmiyor, değil mi? Satır, yazar / değiştirici adını / e-postasını ayrı satırlarda günlüğe kaydeder, ancak tüm çıktıyı sıralar ...
Bunu deneyebilirsiniz:
git log | grep Author: | sort | uniq
(taahhütte bulunan kullanıcılar)
Not: varsayılan olarak git shortloggruplar yazarlar tarafından taahhüt edilir .
Bunları komisyonculara göre gruplandırmanız gerekiyorsa Git 2.12'ye (1. Çeyrek 2017) ihtiyacınız olacaktır.
git shortlog -snc
Bkz. Taahhüt: 03f4082 (16 Aralık 2016), Jeff King ( peff) . Linus Torvalds ( ) tarafından fbfda15 (11 Eki 2016)
bölümüne bakınız . (Göre Birleştirilmiş Junio Cı Hamano - - içinde ad1b4e2 tamamlamatorvalds
gitster , 27 Aralık 2016)
Linus Torvalds'ın kendisi bu özelliği tanıttı:
shortlog: banliyö bilgilerine göre gruplandırBazı durumlarda, taahhütleri yazar tarafından değil, bunun yerine komisyoncu tarafından gruplandırmak isteyebilirsiniz.
Örneğin
linux-next, şu anki birleştirme penceresinde hala eksik olanı aramak istediğimde, kimin yama yazdığı umurumda değil.git treegeldiğini, genellikle "kimin işlediğini" o".Bu nedenle git shortlog'un gruplandırmaya geçiş yapmak için "
-c" veya "--committer" seçeneğini kullanmasını sağlayın .
Başka bir seçenek şunlar olabilir:
git log --format='%aN' | sort -u
Henüz kendim test edemedim, ancak Git deposu için proje istatistikleri için gerçekten güzel görünüyor: https://github.com/visionmedia/git-extras
binFarklı komut dosyalarını görmek için kataloğa göz atın .
Örneğin, git-countkomut dosyası (her komisyoncu için taahhüt sayısı):
git shortlog -n $@ | grep "):" | sed 's|:||'
@ Pedro-nascimento, @mic_e ve diğerlerinin harika yanıtları sorunu zaten çözmektedir.
Ayrıca, aşağıdaki satırı .gitconfig
contributors = shortlog -e --summary --numbered
veya kabuk tipinde
git config --global alias.contributors 'shortlog -e --summary --numbered'
Ve bundan sonra şunları başlatabilirsiniz: git contributors
git contributors
Git-extras adlı harika bir paketi deneyebilirsiniz . Özellikle, git-özet , git-count ve belki başka komutlar .
git shortlog -sn HEAD