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
16,117
in the current tree
Bus Factor
10
10 authors are primary owner of 8,253 of 16,117 files
Single-Owner Files
7,016
43.5% of tracked files
Contributors
2,325
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
src/cmd/compile/internal/ssagen/simdARM64SVEintrinsics.goJunyang Shao38
src/cmd/compile/internal/ssa/_gen/simdARM64SVEops.goJunyang Shao33
src/cmd/compile/internal/arm64/simdssa_sve.goJunyang Shao32
src/cmd/compile/internal/ssa/_gen/simdARM64SVE.rulesJunyang Shao32
src/cmd/asm/internal/asm/testdata/arm64sveenc.sJunyang Shao14
src/cmd/asm/internal/asm/testdata/arm64sveerror.sJunyang Shao14
src/cmd/internal/obj/arm64/inst_gen.goJunyang Shao14
src/cmd/internal/obj/arm64/encoding_gen.goJunyang Shao14
src/crypto/internal/fips140/rsa/keygen.goFilippo Valsorda14
test/known_bits.goJorropo13
Table: the 100 most-changed of 7,016 single-owner files
FileSole ownerCommits
src/cmd/compile/internal/ssagen/simdARM64SVEintrinsics.goJunyang Shao38
src/cmd/compile/internal/ssa/_gen/simdARM64SVEops.goJunyang Shao33
src/cmd/compile/internal/arm64/simdssa_sve.goJunyang Shao32
src/cmd/compile/internal/ssa/_gen/simdARM64SVE.rulesJunyang Shao32
src/cmd/asm/internal/asm/testdata/arm64sveenc.sJunyang Shao14
src/cmd/asm/internal/asm/testdata/arm64sveerror.sJunyang Shao14
src/cmd/internal/obj/arm64/inst_gen.goJunyang Shao14
src/cmd/internal/obj/arm64/encoding_gen.goJunyang Shao14
src/crypto/internal/fips140/rsa/keygen.goFilippo Valsorda14
test/known_bits.goJorropo13
src/cmd/internal/obj/arm64/anames_gen.goJunyang Shao13
src/cmd/internal/obj/arm64/goops_gen.goJunyang Shao13
src/crypto/tls/testdata/Server-TLSv13-ECDHE-ECDSA-AESFilippo Valsorda13
src/cmd/internal/obj/arm64/inst.goJunyang Shao12
src/simd/archsimd/_gen/SPEC-TRANSITION.mdAustin Clements12
src/cmd/compile/internal/types2/util.goRobert Griesemer11
src/internal/types/testdata/examples/inference.goRobert Griesemer11
src/simd/archsimd/_gen/SPEC-TASKS.dotAustin Clements11
src/crypto/tls/testdata/Server-TLSv13-AES256-SHA384Filippo Valsorda11
src/crypto/tls/testdata/Server-TLSv13-CHACHA20-SHA256Filippo Valsorda11
src/cmd/compile/internal/inline/inlheur/funcprops_test.goThan McIntosh11
src/go/types/util.goRobert Griesemer10
src/crypto/tls/testdata/Server-TLSv12-ALPN-FallbackFilippo Valsorda10
src/cmd/compile/internal/ssa/testdata/hist.dlv-opt.nextsDavid Chase9
src/crypto/tls/testdata/Server-TLSv13-ALPN-FallbackFilippo Valsorda9
src/internal/types/testdata/spec/conversions.goRobert Griesemer8
src/internal/types/testdata/examples/inference2.goRobert Griesemer8
src/internal/types/testdata/fixedbugs/issue51472.goRobert Griesemer8
src/cmd/compile/internal/types2/termlist.goRobert Griesemer8
src/simd/internal/spec/converts.goAustin Clements8
src/crypto/x509/x509limbo_test.goDaniel McCarney8
src/internal/sync/hashtriemap_test.goMichael Anthony Knyszek8
src/cmd/compile/internal/inline/inlheur/testdata/props/funcflags.goThan McIntosh8
test/torture.goRémy Oudompheng8
src/net/http/internal/http3/server.goNicholas S. Husin7
src/net/http/internal/http2/clientconn_test.goDamien Neil7
src/simd/archsimd/_gen/simdgen/sve/instruction.goJunyang Shao7
src/simd/archsimd/internal/simd_test/compare_sve_arm64_test.goJunyang Shao7
src/internal/types/testdata/fixedbugs/issue46461.goRobert Griesemer7
src/internal/types/testdata/fixedbugs/issue50779.goRobert Griesemer7
src/internal/types/testdata/fixedbugs/issue50646.goRobert Griesemer7
src/internal/types/testdata/fixedbugs/issue51257.goRobert Griesemer7
src/internal/types/testdata/check/vardecl.goRobert Griesemer7
test/codegen/writebarrier.goKeith Randall7
src/simd/internal/spec/reinterp.goAustin Clements7
src/simd/archsimd/_gen/specgen/loadspec.goAustin Clements7
src/simd/archsimd/_gen/gentools/gentools.goAustin Clements7
src/crypto/ecdsa/boring.goRuss Cox7
src/simd/internal/test_helpers/checkslices.goDavid Chase6
src/cmd/internal/telemetry/telemetry_bootstrap.goMichael Matloob6
src/simd/archsimd/_gen/simdgen/ops/FPonlyArith/go_sve.yamlJunyang Shao6
src/internal/types/testdata/check/shifts.goRobert Griesemer6
src/go/types/testdata/manual.goRobert Griesemer6
src/internal/types/testdata/fixedbugs/issue47968.goRobert Griesemer6
src/internal/types/testdata/check/expr2.goRobert Griesemer6
src/internal/types/testdata/fixedbugs/issue43671.goRobert Griesemer6
src/internal/types/testdata/check/decls2/decls2a.goRobert Griesemer6
src/cmd/compile/internal/syntax/testdata/tparams.goRobert Griesemer6
src/internal/types/testdata/fixedbugs/issue67547.goRobert Griesemer6
src/cmd/compile/internal/types2/errors_test.goRobert Griesemer6
src/internal/types/testdata/check/expr0.goRobert Griesemer6
src/internal/types/testdata/fixedbugs/issue49112.goRobert Griesemer6
src/internal/types/testdata/examples/functions.goRobert Griesemer6
src/internal/types/testdata/fixedbugs/issue49179.goRobert Griesemer6
src/internal/types/testdata/spec/comparable1.19.goRobert Griesemer6
src/internal/types/testdata/spec/comparable.goRobert Griesemer6
src/runtime/testdata/testprogcgo/stackswitch.cMichael Pratt6
src/internal/abi/switch.goKeith Randall6
src/simd/internal/spec/loadstore.goAustin Clements6
src/simd/internal/spec/masks.goAustin Clements6
src/simd/internal/spec/doc.goAustin Clements6
src/internal/abi/stack.goAustin Clements6
src/go/doc/comment/markdown.goRuss Cox6
src/syscall/asm_netbsd_arm.sRuss Cox6
src/crypto/tls/common_string.goFilippo Valsorda6
src/crypto/internal/fips140test/entropy_test.goFilippo Valsorda6
src/cmd/covdata/dump.goThan McIntosh6
test/abi/bad_select_crash.goDavid Chase5
src/cmd/compile/internal/ssa/testdata/scopes.dlv-opt.nextsDavid Chase5
src/cmd/compile/internal/ssa/testdata/scopes.gdb-opt.nextsDavid Chase5
src/net/http/internal/http3/server_test.goNicholas S. Husin5
src/cmd/compile/internal/ssacompile/decompose.goMichael Matloob5
src/cmd/compile/internal/ssacompile/opt.goMichael Matloob5
src/cmd/compile/internal/ssacompile/softfloat.goMichael Matloob5
src/runtime/malloc_tables_generated.goMichael Matloob5
src/net/http/internal/http2/connframes_test.goDamien Neil5
src/simd/archsimd/_gen/simdgen/sve/operands.goJunyang Shao5
src/simd/archsimd/_gen/simdgen/sve/load.goJunyang Shao5
src/cmd/link/internal/ld/seh.goqmuntal5
src/cmd/compile/internal/types2/testdata/manual.goRobert Griesemer5
src/cmd/compile/internal/types2/format.goRobert Griesemer5
src/go/types/format.goRobert Griesemer5
src/internal/types/testdata/fixedbugs/issue49735.goRobert Griesemer5
src/internal/types/testdata/fixedbugs/issue49482.goRobert Griesemer5
src/internal/types/testdata/fixedbugs/issue47115.goRobert Griesemer5
src/internal/types/testdata/fixedbugs/issue51335.goRobert Griesemer5
src/internal/types/testdata/spec/range_int.goRobert Griesemer5
src/internal/types/testdata/fixedbugs/issue49005.goRobert Griesemer5
src/internal/types/testdata/fixedbugs/issue47818.goRobert Griesemer5
src/internal/types/testdata/check/decls4.goRobert Griesemer5

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
Russ Cox2,9328055,601
Robert Griesemer1,0555171,666
Matthew Dempsky6722151,477
Michael Matloob6443511,509
Austin Clements5894561,467
Ian Lance Taylor5602402,289
Roland Shoemaker508461862
Keith Randall4812921,392
Bryan C. Mills4181911,649
Filippo Valsorda394142721
Dmitri Shuralyov381471,155
Tobias Klauser354341,255
Cherry Mui3411861,370
David Chase327191878
Than McIntosh303171642
Michael Anthony Knyszek29384703
Rémy Oudompheng26978382
Cuong Manh Le262226910
Jay Conrod235107600
Alan Donovan19584809
Damien Neil186103611
qmuntal17546560
Michael Pratt17479798
Joe Tsai15047373
Nicholas S. Husin14389353

Showing top 25 of 2325 contributors.

Most shared files

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

FileContributorsPrimary ownerOwner share
src/cmd/go/alldocs.go141Russ Cox17.8%
src/runtime/proc.go118Austin Clements16.3%
src/net/http/server.go114Brad Fitzpatrick29.3%
src/go/build/deps_test.go103Russ Cox14.4%
src/cmd/dist/test.go99Austin Clements10.1%
src/net/http/transport.go96Brad Fitzpatrick35.3%
src/testing/testing.go96Russ Cox11.3%
src/cmd/link/internal/ld/lib.go89Cherry Mui23.7%
src/cmd/go/go_test.go88Russ Cox28.9%
src/os/os_test.go81Ian Lance Taylor8.4%
src/cmd/cgo/gcc.go78Ian Lance Taylor23.4%
src/reflect/type.go78David Crawshaw12.0%
src/runtime/runtime2.go77Austin Clements20.5%
src/net/http/serve_test.go76Brad Fitzpatrick27.1%
src/cmd/go/internal/work/exec.go75Russ Cox19.8%
src/net/http/transport_test.go74Brad Fitzpatrick28.9%
src/cmd/go/internal/test/test.go74Russ Cox27.1%
src/net/http/request.go74Brad Fitzpatrick38.0%
src/cmd/cgo/out.go73Ian Lance Taylor26.9%
doc/go_spec.html72Robert Griesemer58.4%