Code Ownership

Ownership is measured by how many commits each author made to each file in the current tree. It highlights bus-factor risk (files only one person has ever touched) and where knowledge is concentrated. The bus factor is the smallest number of people who are, between them, primary owner of more than half of the files.

Files Tracked
4,760
in the current tree
Bus Factor
5
5 authors are primary owner of 2,427 of 4,760 files
Single-Owner Files
1,855
39.0% of tracked files
Contributors
1,935
authors who changed files

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
Documentation/RelNotes/2.56.0.adocJunio C Hamano32
Documentation/RelNotes/2.55.0.adocJunio C Hamano22
Documentation/RelNotes/2.98.0.adocJunio C Hamano13
t/t7424-submodule-mixed-ref-formats.shPatrick Steinhardt12
odb/source-files.hPatrick Steinhardt11
diff-merges.hSergey Organov11
odb/source-packed.hPatrick Steinhardt10
po/AGENTS.mdJiang Xin10
odb/source-loose.hPatrick Steinhardt8
odb/source.cPatrick Steinhardt8
Table: the 100 most-changed of 1,855 single-owner files
FileSole ownerCommits
Documentation/RelNotes/2.56.0.adocJunio C Hamano32
Documentation/RelNotes/2.55.0.adocJunio C Hamano22
Documentation/RelNotes/2.98.0.adocJunio C Hamano13
t/t7424-submodule-mixed-ref-formats.shPatrick Steinhardt12
odb/source-files.hPatrick Steinhardt11
diff-merges.hSergey Organov11
odb/source-packed.hPatrick Steinhardt10
po/AGENTS.mdJiang Xin10
odb/source-loose.hPatrick Steinhardt8
odb/source.cPatrick Steinhardt8
reftable/system.cPatrick Steinhardt8
GIT-BUILD-OPTIONS.inPatrick Steinhardt8
src/hash.rsbrian m. carlson7
t/t7425-submodule-gitdir-path-extension.shAdrian Ratiu7
t/lib-subtest.shÆvar Arnfjörð Bjarmason6
reftable/reftable-basics.hPatrick Steinhardt5
reftable/reftable-table.hPatrick Steinhardt5
contrib/meson.buildPatrick Steinhardt5
t/unit-tests/clar/.github/workflows/ci.ymlPatrick Steinhardt5
t/t7706-repack-drop-filtered.shSiddharth Shrimali5
Documentation/git-last-modified.adocToon Claes5
parallel-checkout.hMatheus Tavares5
t/t0611-reftable-httpd.shPatrick Steinhardt4
odb/source-inmemory.hPatrick Steinhardt4
oss-fuzz/meson.buildPatrick Steinhardt4
reftable/reftable-block.hPatrick Steinhardt4
t/unit-tests/clar/clar.hPatrick Steinhardt4
add-patch.hPatrick Steinhardt4
t/unit-tests/unit-test.hPatrick Steinhardt4
t/unit-tests/clar/clar/sandbox.hPatrick Steinhardt4
reftable/table.hPatrick Steinhardt4
Documentation/technical/paint-down-to-common.adocKristofer Karlsson4
t/t0034-root-safe-directory.shCarlo Marcelo Arenas Belón4
subprojects/expat.wrapPatrick Steinhardt3
subprojects/pcre2.wrapPatrick Steinhardt3
contrib/completion/meson.buildPatrick Steinhardt3
t/unit-tests/clar/generate.pyPatrick Steinhardt3
t/unit-tests/clar/test/expected/quietPatrick Steinhardt3
t/unit-tests/clar/test/expected/summary_with_filenamePatrick Steinhardt3
t/unit-tests/clar/test/expected/summary_without_filenamePatrick Steinhardt3
t/unit-tests/clar/test/expected/tapPatrick Steinhardt3
t/unit-tests/clar/test/expected/without_argumentsPatrick Steinhardt3
t/unit-tests/clar/test/selftest.cPatrick Steinhardt3
ci/run-rust-checks.shPatrick Steinhardt3
t/unit-tests/clar/test/CMakeLists.txtPatrick Steinhardt3
t/unit-tests/clar/test/main.cPatrick Steinhardt3
t/unit-tests/clar/clar/summary.hPatrick Steinhardt3
contrib/credential/netrc/meson.buildPatrick Steinhardt3
bin-wrappers/wrap-for-bin.shPatrick Steinhardt3
ci/run-style-check.shKarthik Nayak3
t/interop/interop-lib.shJeff King3
Documentation/lint-documentation-style.perlJean-Noël Avila3
t/t4218-log-graph-indentation.shPablo Sabater3
trace2/tr2_tbuf.hJeff Hostetler3
t/t5100/msg0002Junio C Hamano2
t/t5100/msg0003Junio C Hamano2
t/t5100/info0014Junio C Hamano2
t/t5100/msg0014Junio C Hamano2
subprojects/curl.wrapPatrick Steinhardt2
subprojects/openssl.wrapPatrick Steinhardt2
subprojects/zlib.wrapPatrick Steinhardt2
reftable/reftable-system.hPatrick Steinhardt2
tools/meson.buildPatrick Steinhardt2
t/t3450-history.shPatrick Steinhardt2
t/unit-tests/clar/test/suites/combined.cPatrick Steinhardt2
Cargo.tomlPatrick Steinhardt2
src/varint.rsPatrick Steinhardt2
t/unit-tests/clar/test/expected/helpPatrick Steinhardt2
t/unit-tests/clar/test/expected/specific_testPatrick Steinhardt2
t/unit-tests/clar/test/expected/stop_on_failurePatrick Steinhardt2
t/unit-tests/clar/test/expected/suite_namesPatrick Steinhardt2
t/unit-tests/clar/test/expected/summary.xmlPatrick Steinhardt2
t/unit-tests/clar/test/selftest.hPatrick Steinhardt2
t/unit-tests/clar/CMakeLists.txtPatrick Steinhardt2
t/unit-tests/clar/clar/fixtures.hPatrick Steinhardt2
gitweb/meson.buildPatrick Steinhardt2
templates/meson.buildPatrick Steinhardt2
t/t5413-connectivity-check.shKristofer Karlsson2
Documentation/technical/connectivity-check.adocKristofer Karlsson2
t/perf/p5413-connectivity-check.shKristofer Karlsson2
Documentation/git-diff-pairs.adocJustin Tobler2
builtin/diff-pairs.cJustin Tobler2
t/t4070-diff-pairs.shJustin Tobler2
t/perf/p6010-merge-base.shRené Scharfe2
t/t4051/hello.cRené Scharfe2
compat/memmem.cRené Scharfe2
t/t7505/expected-rebase-iPhillip Wood2
tools/coccinelle/hash.cocciJeff King2
t/interop/READMEJeff King2
t/lib-chunk/corrupt-chunk-file.plJeff King2
t/t5559-http-fetch-smart-http2.shJeff King2
t/perf/p5304-prune.shJeff King2
t/perf/lib-pack.shJeff King2
t/perf/p5550-fetch-tags.shJeff King2
t/perf/bisect_run_scriptChristian Couder2
po/af.poStéfan Driaan Turvey2
t/unit-tests/u-utf8-width.cJiang Xin2
compat/win32/exit-process.hJohannes Schindelin2
ci/make-test-artifacts.shJohannes Schindelin2
t/lib-shell-parser.plMichael Montalbo2

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
brian m. carlson8856931,529
Patrick Steinhardt5281451,885
Junio C Hamano4251161,316
Jeff King329461,346
Ævar Arnfjörð Bjarmason260141,241
Johannes Schindelin172391,160
Elijah Newren11610833
Phillip Wood11287264
Eric Sunshine1020484
Nguyễn Thái Ngọc Duy8810603
Taylor Blau6914344
René Scharfe6417536
Thomas Rast5341215
Derrick Stolee513380
Michael Montalbo4944432
Jeff Hostetler4914205
Michael Haggerty4719187
Santi Béjar42357
Jiang Xin403165
Johannes Sixt3730289
Jonathan Nieder3421406
Eric Wong348197
Jean-Noël Avila312222
Zbigniew Jędrzejewski-Szmek29059
Đoàn Trần Công Danh268110

Showing top 25 of 1935 contributors.

Most shared files

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

FileContributorsPrimary ownerOwner share
Makefile320Junio C Hamano15.9%
diff.c169Junio C Hamano24.4%
contrib/completion/git-completion.bash159SZEDER Gábor17.2%
git.c140Junio C Hamano15.4%
git-svn.perl134Eric Wong49.9%
git-compat-util.h134Jeff King12.0%
git-send-email.perl134Ævar Arnfjörð Bjarmason11.1%
config.c131Jeff King15.0%
revision.c118Junio C Hamano19.3%
gitweb/gitweb.perl114Jakub Narębski45.9%
.gitignore106Junio C Hamano16.1%
builtin/commit.c105Jeff King11.0%
read-cache.c103Junio C Hamano15.3%
refs.c100Michael Haggerty25.5%
t/test-lib.sh100Jeff King13.3%
remote.c100Jeff King14.2%
http.c95Jeff King23.5%
sequencer.c93Johannes Schindelin18.4%
wt-status.c89Jeff King12.7%
git-submodule.sh89Stefan Beller12.5%