Страницы

Поиск по вопросам

пятница, 20 декабря 2019 г.

Как подсчитать количество написанного кода в репозитории по авторам?

#git #git_log


Задача узнать, кто из авторов сколько кода написал. Я знаю, что это необъективная
информация для подсчета вклада в проект, но все же хоть какая-то статистика. Если знаете
какие-то решения, актуальные на данный момент - прошу поделиться.

Пробовал пользоваться вот этим пакетом, но он устарел, т.к. был написан более семи
лет назад. Более новых google не выдал.

Есть команда git log --numstat, но она выдает разрозненные данные по коммитам и ей
невозможно воспользоваться для данных целей. Или я все же что-то пропустил?
    


Ответы

Ответ 1



Есть команда git log --numstat, но она выдает разрозненные данные по коммитам и ей невозможно воспользоваться для данных целей. Или я все же что-то пропустил? так на основании выдаваемой информации можно подсчитать, сколько строк добавил и сколько удалил (именно такие цифры выдаёт git log --numstat) каждый автор. примерно вот так (это я быстренько «набросал», можно и улучшить и оптимизировать): $ git log --pretty=format:==%an --numstat | \ sed -r '/==.*/{s/^==//;h;D};/^$/D;s/-/0/g;s/\t[^\t]+$//;G;s/(.*)\n(.*)/\2\t\1/' \ | awk -F '\t' '{add[$1]+=$2;del[$1]+=$3} END {for (i in add) {print i,add[i],del[i]}}' для упомянутого вами проекта она выдаёт: Caue Guerra 361 168 Pedro Matiello 729 238 для проекта https://github.com/processone/ejabberd вот такую статистику выдаёт: Alexey Shchepin 121555 48334 Andreas Köhler 429 335 Antonio Murdaca 63 10 Anton Ryzhov 0 1 Arno B 22 5 Badlop 310727 228783 Balázs Galambosi 2 2 Ben Langfeld 87 110 bLaDe 1 1 Christian Dröge 17 12 Christopher A. Stelma 1 1 Christophe Romain 42755 54608 Christopher tofu Zorn 128 96 colm 8 3 Cor Cornelisse 2 2 Denis Kurochkin 600 2 ekhramtsov 44 4 Elias Rohrer 24 87 Emilio Bustos 82 52 Evgeniy Khramtsov 229257 210283 Evgeny Khramtsov 0 15 Feotov Daniil 67 6 Geoff Cant 279 163 GreenLunar 66 98 Gu Feng 7 3 HAMANO Tsukasa 390 320 Holger Wei 2 0 Holger Weiss 5665 3161 iulianlaz 13 1 jabber 5 0 Jamie Nguyen 401 532 Janusz Dziemidowicz 129 41 Jerome Sautret 1300 199 Jérôme Sautret 1465 1011 Johan Oudinet 16 12 Jonas Ådahl 7 1 jpegger 1 1 Juan Pablo Carlino 2 2 Leif Bredgaard Honore 2 2 liudan 6 4 Marek Foss 12 5 Martin Langhoff 81 7 Mathias Ertl 33 31 Matthias Rieber 22 6 Matwey V. Kornilov 7 13 Maxim Ignatenko 857 567 Mickael Remond 1458 1118 Mickaël Rémond 394 115 Mickaël Rémond 44205 25665 Mikhail-D 1783 0 mrjameshamilton 1 1 Nathan Bruning 13 11 Nikolaus Polak 17 20 Nycholas de Oliveira e Oliveira 3 1 Otavio Fernandes 71 60 oxpa 4 2 Pablo Polvorin 556 152 Paul Donohue 8 4 Paweł Chmielowski 3305 3548 Peter Lemenkov 11 2 Quan Zhuo 4 4 Radosław Szymczyszyn 51 74 Rahul Gautam 9 9 Remco Wendt 8 0 Sergey Abramyan 542 15 Shelley Shyan 91 104 Sonny Scroggin 167 135 Stephen Röttger 43 36 Steven Lehrburger 2 4 stewart 1 1 Taufan Aditya 5 8 thierry 2 0 tjeerd 4 0 tmallard 6553 1300 Tsukasa Hamano 6 12 Tuncer Ayaz 2 2 vesvalo 19 7 Victor Rodrigues 74 73 W. Andrew Loe III 1 0

Комментариев нет:

Отправить комментарий