Berapa banyak pengembang yang sebenarnya bekerja pada kernel Linux?

18

Untuk sebuah studi yang saya lakukan, saya ditanya berapa banyak pengembang yang sebenarnya melakukan pada versi kernel yang khas.

Saya tahu ada Linus Torvalds sebagai pengembang utama, diikuti oleh banyak pengembang utama kedua. Beberapa di antaranya bekerja di perusahaan. Tapi inilah keraguan saya:

  1. Apakah komit ke kernel dari sebuah perusahaan berarti bahwa banyak dev dari perusahaan itu bekerja untuk membuat komit itu mungkin atau hanya satu orang (Komitmen yang melakukan komit).

  2. Apakah ada grup pihak ketiga yang membantu perusahaan atau pengembang utama?

  3. Apa yang bisa menjadi perkiraan jumlah total orang yang terlibat dalam versi tertentu dari Kernel. Tidak hanya jumlah total perusahaan tetapi jumlah sebenarnya orang yang berkontribusi satu atau lain cara ke kernel.

Luis Alvarado
sumber

Jawaban:

20

Mungkin menarik untuk mengkloning repositori git dari linux dan langsung menanyakannya.

Mengkloning repo

Hati-hati ini file besar! (~ 1.5G)

Instal gitdan jalankan yang berikut ini (di direktori baru):

git clone http://github.com/torvalds/linux.git

Meminta repo

Setelah Anda mengkloningnya, Anda dapat menganalisis log komit dengan git log. Karena log sangat panjang, Anda mungkin ingin membatasi penelitian Anda ke periode waktu yang lebih kecil:

git log <since>..<to>

contohnya

git log v3.4..v3.5

Secara teoritis ini banyak info yang bisa Anda gunakan. Misalnya, perintah itu mencetak 20 komuter paling produktif bersama dengan jumlah komit dan alamat email mereka.

$ git log v3.4..v3.5 | grep Author | cut -d ":" -f 2 | sort | uniq -c | sort -nr | head -n 20
417  Linus Torvalds <[email protected]>
257  Greg Kroah-Hartman <[email protected]>
196  Mark Brown <[email protected]>
191  Axel Lin <[email protected]>
172  David S. Miller <[email protected]>
138  Daniel Vetter <[email protected]>
132  H Hartley Sweeten <[email protected]>
128  Al Viro <[email protected]>
117  Stephen Warren <[email protected]>
113  Tejun Heo <[email protected]>
111  Paul Mundt <[email protected]>
104  Johannes Berg <[email protected]>
103  Shawn Guo <[email protected]>
101  Arnd Bergmann <[email protected]>
100  Thomas Gleixner <[email protected]>
 96  Eric Dumazet <[email protected]>
 94  Hans Verkuil <[email protected]>
 86  Chris Wilson <[email protected]>
 85  Sam Ravnborg <[email protected]>
 85  Dan Carpenter <[email protected]>

Alamat email dapat memberi Anda gambaran tentang perusahaan pengembang (google.com, cisco.com, oracle.com).

rahmu
sumber
1
Dimungkinkan juga untuk menanyakan riwayat kode tanpa harus mengkloningnya secara lokal melalui api github , mis. Inilah daftar kontributor api.github.com/repos/torvalds/linux/contributors (tampaknya diurutkan berdasarkan jumlah komitmen)
matt wilkie
menurut ini perintah di atas hanya mencantumkan cabang saat ini dan yang perlu digunakan git log --all ...untuk daftar yang lebih komprehensif
matt wilkie
1
Perhatikan juga bahwa ini akan mencantumkan kontributor ke kernel mainline. Ada cabang / cabang dari kernel yang telah didistribusikan yang dibangun dengan tambalan dari pengembang lain, misalnya kernel yang digunakan di Android.
Peter L.
Anda mungkin ingin menghitung jumlah komitmen yang tidak bergabung dan Anda akan melihat bahwa Linus melakukan lebih sedikit pekerjaan daripada itu.
Alexandre Belloni
14

Buka cakupan Kernel di LWN.net dan lakukan pencarian untuk "Rilis", dan "statistik Kontributor". Juga lakukan pencarian untuk "Siapa". Ada berbagai artikel dalam indeks itu dengan judul seperti (paling baru) Siapa yang menulis 3,5 .

Walaupun artikel-artikel ini mungkin tidak secara langsung menjawab pertanyaan Anda, mereka adalah jawaban yang sedetail mungkin Anda temukan di internet, tanpa berusaha mengumpulkan informasi secara langsung. Secara khusus, mereka harus memberikan setidaknya sebagian jawaban ke 3.

Pengumpulan statistik dilakukan oleh gitdm (artikel LWN mengumumkannya: gitdm v0.10 tersedia ). Terima kasih kepada vonbrand untuk menunjukkan ini. Repositori saat ini (Januari 2015) dapat diperoleh dengan

git clone git://git.lwn.net/gitdm.git

Adapun 1 dan 2, mereka tidak didefinisikan dengan baik. Dalam kasus 1, saya membayangkan jawabannya hampir pasti ya, kadang-kadang. Tetapi tidak jelas apa yang Anda cari - bukti anekdotal, atau beberapa statistik. Jika statistik, dalam bentuk apa? Dalam kasus 2, oleh "grup pihak ke-3" tidak jelas apa yang Anda maksud, dan jenis bantuan apa yang Anda maksud. Apakah orang-orang di saluran IRC akan dihitung sebagai kelompok pihak ketiga, misalnya? Atau apakah Anda berbicara tentang hubungan kontrak yang lebih formal di mana uang berpindah tangan? Seperti perusahaan luar yang dipertahankan untuk konsultasi sementara? Bagaimanapun, informasi seperti itu akan sulit didapat tanpa berbicara dengan pengembang kernel secara langsung, dan itupun kemungkinan akan menjadi anekdotal. Saya kira forum seperti milis kernel Linux akan menjadi kemungkinan dalam hal ini.

Faheem Mitha
sumber
Terima kasih. Dalam kasus ke-3 saya mencari orang yang juga membantu dalam membuat komitmen. Misalnya, sekelompok orang yang membantu seseorang dalam suatu perusahaan. Orang di perusahaan ini bekerja dengan grup yang pada akhirnya membuat komitmen terhadap kernel.
Luis Alvarado
Pengumpulan statistik dilakukan oleh gitdm (artikel LWN annoig it lwn.net/Articles/290957 , komit terbaru dari Arpil 2012)
vonbrand