Code Ownership

Ownership is measured by how many commits each author made to each file. It highlights bus-factor risk (files only one person has ever touched) and where knowledge is concentrated.

Files tracked
803
Single-owner files
252 (31.4%)
Contributors
137

Bus Factor Risk — Single-Owner Files

Files only one author has ever changed. The more a file has changed, the more knowledge is at risk if that person leaves.

FileSole ownerCommits
src/http/modules/proxy/ngx_http_proxy_handler.cIgor Sysoev93
src/http/ngx_http_write_filter.cIgor Sysoev73
src/http/ngx_http_header_filter.cIgor Sysoev67
src/http/ngx_http_event.cIgor Sysoev66
src/http/modules/ngx_http_index_handler.cIgor Sysoev62
src/http/modules/ngx_http_static_handler.cIgor Sysoev61
src/http/modules/ngx_http_gzip_filter.cIgor Sysoev61
src/http/modules/proxy/ngx_http_proxy_upstream.cIgor Sysoev58
src/http/modules/proxy/ngx_http_proxy_handler.hIgor Sysoev54
src/http/ngx_http_output_filter.cIgor Sysoev54
src/imap/ngx_imap_handler.cIgor Sysoev39
src/http/modules/ngx_http_range_filter.cIgor Sysoev34
src/core/ngx_hunk.hIgor Sysoev34
src/http/ngx_http_log_handler.cIgor Sysoev32
auto/ccIgor Sysoev31
src/http/ngx_http_cache.cIgor Sysoev30
src/core/ngx_modules.cIgor Sysoev27
src/core/ngx_hunk.cIgor Sysoev27
src/imap/ngx_imap_auth_http_module.cIgor Sysoev25
src/imap/ngx_imap.hIgor Sysoev24
src/http/modules/ngx_http_charset_filter.cIgor Sysoev23
auto/os/featuresIgor Sysoev22
src/http/modules/ngx_http_ssi_filter.cIgor Sysoev22
src/http/modules/ngx_http_chunked_filter.cIgor Sysoev22
src/os/win32/ngx_types.hIgor Sysoev21
src/http/modules/proxy/ngx_http_proxy_cache.cIgor Sysoev20
src/event/ngx_event_proxy.cIgor Sysoev19
src/core/ngx_alloc.cIgor Sysoev18
src/imap/ngx_imap_core_module.cIgor Sysoev17
src/imap/ngx_imap_proxy_module.cIgor Sysoev16
src/http/modules/proxy/ngx_http_proxy_header.cIgor Sysoev16
src/core/ngx_garbage_collector.cIgor Sysoev15
src/imap/ngx_imap_parse.cIgor Sysoev15
src/http/modules/ngx_http_rewrite_handler.cIgor Sysoev15
src/http/modules/proxy/ngx_http_event_proxy_handler.cIgor Sysoev15
src/http/modules/ngx_http_event_proxy_handler.cIgor Sysoev15
src/http/modules/ngx_http_userid_filter.cIgor Sysoev14
src/core/ngx_atomic.hIgor Sysoev14
src/event/modules/ngx_kqueue_module.hIgor Sysoev13
src/os/unix/ngx_types.hIgor Sysoev13
src/http/ngx_http_core.cIgor Sysoev13
src/imap/ngx_imap_proxy.cIgor Sysoev12
src/http/modules/ngx_http_headers_filter.cIgor Sysoev12
auto/funcIgor Sysoev12
src/http/modules/ngx_http_not_modified_filter.cIgor Sysoev12
src/http/ngx_http_headers.cIgor Sysoev12
src/http/modules/ngx_http_log_handler.cIgor Sysoev12
src/event/ngx_event_proxy.hIgor Sysoev12
src/http/ngx_http_config.cIgor Sysoev11
auto/fmt/fmtIgor Sysoev11

Showing top 50 of 252 single-owner files.

Ownership by Author

Primary owner = the author with the most commits to a file. Solely owned = files only that author has touched.

AuthorFiles ownedSolely ownedFiles touched
Igor Sysoev542194593
Vladimir Homutov474164
Roman Arutyunyan456212
Maxim Dounin388336
Ruslan Ermilov366309
Valentin Bartenev205179
Sergey Kandaurov190252
Maxim Konovalov90366
Andrew Clayton8737
Alessandro Fael Garcia7613
Roman Semenov5512
Henry Yuan437
Maryna Herasimovich416
Piotr Sikora2084
Eugene Grebenschikov229
Konstantin Pavlov207
Evan Miller223
Ava Hahn109
Zhidao HONG109
Pavel Pautov118
Orgad Shaneh116
Michael Vernik103
Gena Makhomed103
jzebor-at-f5101
xuruidong101

Showing top 25 of 137 contributors.

Most Shared Files

Files touched by the most people — shared code where changes are most likely to need coordination.

FileContributorsPrimary ownerOwner share
src/http/ngx_http_upstream.c25Igor Sysoev43.6%
src/event/ngx_event_openssl.c22Maxim Dounin33.4%
src/http/modules/ngx_http_proxy_module.c21Igor Sysoev47.8%
src/http/modules/ngx_http_ssl_module.c17Igor Sysoev35.8%
src/http/modules/ngx_http_uwsgi_module.c17Maxim Dounin34.3%
src/http/ngx_http_core_module.c16Igor Sysoev71.2%
src/http/modules/ngx_http_fastcgi_module.c15Igor Sysoev59.1%
src/event/ngx_event_openssl.h15Igor Sysoev30.0%
src/http/ngx_http_upstream.h15Igor Sysoev42.7%
auto/options14Igor Sysoev61.3%
src/http/ngx_http_variables.c14Igor Sysoev59.2%
src/core/ngx_resolver.c14Igor Sysoev33.6%
src/http/modules/ngx_http_ssi_filter_module.c14Igor Sysoev73.3%
src/http/ngx_http_request.c13Igor Sysoev59.0%
src/http/ngx_http.c13Igor Sysoev75.8%
auto/modules13Igor Sysoev46.5%
src/core/ngx_core.h13Igor Sysoev71.2%
src/http/modules/ngx_http_scgi_module.c13Maxim Dounin39.3%
src/mail/ngx_mail_ssl_module.c13Maxim Dounin30.9%
src/http/modules/ngx_http_grpc_module.c13Maxim Dounin40.7%