Git: утилита GitStats — стастика репозитория

Автор: | 03/12/2016
 

git-logoДомашняя страница проекта — http://gitstats.sourceforge.net/

Устанавливаем:

# yum install gitstats

Проверяем:

# gitstats -h

Usage: gitstats [options] <gitpath..> <outputpath>

Options:
-c key=value     Override configuration value

Default config values:
{'linear_linestats': 1, 'style': 'gitstats.css', 'commit_end': 'HEAD', 'max_authors': 20, 'commit_begin': '', 'max_ext_length': 10, 'project_name': '', 'authors_top': 5, 'merge_authors': {}, 'max_domains': 10}

Please see the manual page for more details.

Поиском утилит статистики я занялся для того, что бы посмотреть статистиску по разработке ядра Linux, а именно — кол-во строк кода на сегодняшний день в нем.

Немного забегая наперед — их более 21 миллиона:

...
Total Lines of Code
21152329 (44870575 added, 23718246 removed)
...

Клонируем:

$ git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git

Запускаем: первый аргумент — каталог репозитория, второй — для результатов:

# gitstats linux/ linux_kernel_stats
[0.64090] >> gnuplot --version
Output path: /tmp/linux_kernel_stats
Git path: linux/
Collecting data...
>> git shortlog -s HEAD | wc -l
...
[0.01972] >> gnuplot "/tmp/linux_kernel_stats/domains.plot"
Execution time 125894.67363 secs, 125469.91376 secs (99.66 %) in external commands)
You may now run:

   sensible-browser '/tmp/linux_kernel_stats/index.html'

Обратите внимание — Execution time 125894, 34 часа на 1Ггц VPS.

Результат:

# ls -l linux_kernel_stats/
total 24240
-rw-r--r-- 1 root root    33970 Mar  3 08:46 activity.html
-rw-r--r-- 1 root root       73 Mar  3 08:46 arrow-down.gif
-rw-r--r-- 1 root root       71 Mar  3 08:46 arrow-none.gif
-rw-r--r-- 1 root root       73 Mar  3 08:46 arrow-up.gif
-rw-r--r-- 1 root root   265561 Mar  3 08:46 authors.html
-rw-r--r-- 1 root root   131748 Mar  3 08:46 commits_by_author.dat
-rw-r--r-- 1 root root     1586 Mar  3 08:46 commits_by_author.plot
-rw-r--r-- 1 root root     8429 Mar  3 08:46 commits_by_author.png
-rw-r--r-- 1 root root      189 Mar  3 08:46 commits_by_year.dat
-rw-r--r-- 1 root root      230 Mar  3 08:46 commits_by_year.plot
-rw-r--r-- 1 root root     2518 Mar  3 08:46 commits_by_year.png
-rw-r--r-- 1 root root     1857 Mar  3 08:46 commits_by_year_month.dat
-rw-r--r-- 1 root root      294 Mar  3 08:46 commits_by_year_month.plot
-rw-r--r-- 1 root root     2772 Mar  3 08:46 commits_by_year_month.png
-rw-r--r-- 1 root root       87 Mar  3 08:46 day_of_week.dat
-rw-r--r-- 1 root root      228 Mar  3 08:46 day_of_week.plot
-rw-r--r-- 1 root root     2591 Mar  3 08:46 day_of_week.png
-rw-r--r-- 1 root root      196 Mar  3 08:46 domains.dat
-rw-r--r-- 1 root root      262 Mar  3 08:46 domains.plot
-rw-r--r-- 1 root root     3453 Mar  3 08:46 domains.png
-rw-r--r-- 1 root root    18249 Mar  3 08:46 files.html
-rw-r--r-- 1 root root  2026577 Mar  3 08:46 files_by_date.dat
-rw-r--r-- 1 root root      286 Mar  3 08:46 files_by_date.plot
-rw-r--r-- 1 root root     2827 Mar  3 08:46 files_by_date.png
-rw-r--r-- 1 root root 19085437 Mar  3 08:46 gitstats.cache
-rw-r--r-- 1 root root     1645 Mar  3 08:46 gitstats.css
-rw-r--r-- 1 root root      207 Mar  3 08:46 hour_of_day.dat
-rw-r--r-- 1 root root      221 Mar  3 08:46 hour_of_day.plot
-rw-r--r-- 1 root root     2697 Mar  3 08:46 hour_of_day.png
-rw-r--r-- 1 root root     1410 Mar  3 08:46 index.html
-rw-r--r-- 1 root root      899 Mar  3 08:46 lines.html
-rw-r--r-- 1 root root   888193 Mar  3 08:46 lines_of_code.dat
-rw-r--r-- 1 root root      261 Mar  3 08:46 lines_of_code.plot
-rw-r--r-- 1 root root     2941 Mar  3 08:46 lines_of_code.png
-rw-r--r-- 1 root root   168804 Mar  3 08:46 lines_of_code_by_author.dat
-rw-r--r-- 1 root root     1710 Mar  3 08:46 lines_of_code_by_author.plot
-rw-r--r-- 1 root root     6234 Mar  3 08:46 lines_of_code_by_author.png
-rw-r--r-- 1 root root       99 Mar  3 08:46 month_of_year.dat
-rw-r--r-- 1 root root      225 Mar  3 08:46 month_of_year.plot
-rw-r--r-- 1 root root     2502 Mar  3 08:46 month_of_year.png
-rw-r--r-- 1 root root     9553 Mar  3 08:46 sortable.js
-rw-r--r-- 1 root root  2023599 Mar  3 08:46 tags.html

Смотрим:

$ links linux_kernel_stats/index.html

Screen Shot 2016-03-03 at 11.31.57

Сама статистика доступна тут: http://rtfm.co.ua/uploads/linux_kernel_stats/index.html