Apakah mungkin untuk mendaftar semua pengguna yang berkontribusi pada proyek (pengguna yang telah melakukan komitmen) di Git?
Adakah statistik tambahan?
Apakah mungkin untuk mendaftar semua pengguna yang berkontribusi pada proyek (pengguna yang telah melakukan komitmen) di Git?
Adakah statistik tambahan?
Jawaban:
Untuk menampilkan semua pengguna & email, dan jumlah komit di cabang CURRENT:
git shortlog --summary --numbered --email
Atau sederhananya:
git shortlog -sne
Untuk menampilkan pengguna dari semua cabang (tidak hanya yang ada di cabang saat ini) Anda harus menambahkan --alltanda:
git shortlog -sne --all
-e.
--allbendera
git shortlog --summary --numbered <pathToFile>
Jika Anda ingin lebih spesifik dalam daftar (temukan daftar pengalih dan pengarang unik), Anda dapat menggunakan git log:
git log --pretty="%an %ae%n%cn %ce" | sort | uniq
%an nama penulis%ae email penulis%n garis baru%cn nama pengendara%ce email komuterPlaceholder lain dijelaskan dalam dokumentasi cetak cantikgit log .
%ntidak masuk akal jika dikombinasikan dengan (berbasis garis) sort, bukan? Log baris penulis / nama pengangkat / email dalam baris terpisah, tetapi memilah seluruh output ...
Anda dapat mencoba ini:
git log | grep Author: | sort | uniq
(pengguna yang telah melakukan komit)
Catatan: secara default git shortloggrup dilakukan oleh penulis .
Jika Anda perlu mengelompokkannya berdasarkan committer, Anda perlu Git 2.12 (Q1 2017)
git shortlog -snc
Lihat komit 03f4082 (16 Des 2016) oleh Jeff King ( peff) .
Lihat komit fbfda15 (11 Okt 2016) oleh Linus Torvalds ( torvalds) .
(Digabung oleh Junio C Hamano - gitster- dalam komit ad1b4e2 , 27 Des 2016)
Linus Torvalds sendiri memperkenalkan fitur ini:
shortlog: dikelompokkan berdasarkan informasi pengangkutDalam beberapa situasi Anda mungkin ingin mengelompokkan komit bukan oleh penulis, tetapi oleh komiter sebagai gantinya.
Misalnya, ketika saya hanya ingin mencari apa yang masih saya lewatkan dari
linux-nextjendela penggabungan saat ini, saya tidak terlalu peduli tentang siapa yang menulis tambalan, seperti apagit treeasalnya, yang umumnya bermuara pada "siapa yang berkomitmen Itu".Jadi buat git shortlog mengambil opsi "
-c" atau "--committer" untuk mengalihkan pengelompokan itu.
Pilihan lain dapat:
git log --format='%aN' | sort -u
Saya belum sempat mengujinya sendiri, tetapi ini terlihat sangat bagus untuk statistik proyek untuk repositori Git: https://github.com/visionmedia/git-extras
Lihat binkatalog untuk melihat skrip yang berbeda.
Misalnya, git-countskrip (jumlah komit per komuter):
git shortlog -n $@ | grep "):" | sed 's|:||'
Jawaban yang bagus oleh @ pedro-nascimento, oleh @mic_e dan lainnya sudah menyelesaikan masalah.
Selain itu, Anda dapat menambahkan baris berikut ke .gitconfig
contributors = shortlog -e --summary --numbered
atau dalam tipe shell
git config --global alias.contributors 'shortlog -e --summary --numbered'
Dan setelah itu Anda bisa memohon: git contributors
git contributors
Anda dapat mencoba paket luar biasa yang disebut git-ekstra . Secara khusus, perintah git-ringkasan , git-count, dan mungkin beberapa lainnya .
git shortlog -sn HEAD