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 only one author has ever changed. The more a file has changed, the more knowledge is at risk if that person leaves.
| File | Sole owner | Commits |
|---|---|---|
| .goreleaser.yaml | Terry Howe | 9 |
| pkg/cmd/testdata/output/history-with-rollback.txt | MrJack | 3 |
| .github/workflows/e2e-registries.yml | Terry Howe | 2 |
| test/e2e/README.md | Terry Howe | 2 |
| pkg/cmd/testdata/output/list-all-date.txt | Terry Howe | 2 |
| internal/plugin/doc.go | Scott Rigby | 2 |
| internal/plugin/testdata/src/extismv1-test/main.go | George Jenkins | 2 |
| internal/plugin/testdata/src/extismv1-test/plugin.yaml | George Jenkins | 2 |
| pkg/chart/common/file.go | Matt Farina | 2 |
| pkg/release/v1/util/manifest_sorter.go | Matt Farina | 2 |
| File | Sole owner | Commits |
|---|---|---|
| .goreleaser.yaml | Terry Howe | 9 |
| pkg/cmd/testdata/output/history-with-rollback.txt | MrJack | 3 |
| .github/workflows/e2e-registries.yml | Terry Howe | 2 |
| test/e2e/README.md | Terry Howe | 2 |
| pkg/cmd/testdata/output/list-all-date.txt | Terry Howe | 2 |
| internal/plugin/doc.go | Scott Rigby | 2 |
| internal/plugin/testdata/src/extismv1-test/main.go | George Jenkins | 2 |
| internal/plugin/testdata/src/extismv1-test/plugin.yaml | George Jenkins | 2 |
| pkg/chart/common/file.go | Matt Farina | 2 |
| pkg/release/v1/util/manifest_sorter.go | Matt Farina | 2 |
| pkg/action/get_test.go | Stephanie Hohenberg | 2 |
| pkg/action/status_test.go | Stephanie Hohenberg | 2 |
| pkg/action/verify_test.go | Stephanie Hohenberg | 2 |
| .github/ISSUE_TEMPLATE/documentation.yaml | Bhargavkonidena | 2 |
| .github/ISSUE_TEMPLATE/feature.yaml | Bhargavkonidena | 2 |
| pkg/downloader/testdata/repository/malformed-index.yaml | Adam Reese | 2 |
| pkg/downloader/testdata/repository/testing-basicauth-index.yaml | Adam Reese | 2 |
| pkg/downloader/testdata/repository/testing-https-index.yaml | Adam Reese | 2 |
| pkg/downloader/testdata/repository/testing-querystring-index.yaml | Adam Reese | 2 |
| pkg/downloader/testdata/repository/testing-relative-trailing-slash-index.yaml | Adam Reese | 2 |
| pkg/action/testdata/charts/chart-missing-deps/requirements.lock | Matt Butcher | 2 |
| pkg/action/testdata/charts/chart-missing-deps/requirements.yaml | Matt Butcher | 2 |
| pkg/action/testdata/charts/chart-with-compressed-dependencies/requirements.lock | Matt Butcher | 2 |
| pkg/action/testdata/charts/chart-with-compressed-dependencies/requirements.yaml | Matt Butcher | 2 |
| pkg/action/testdata/charts/chart-with-uncompressed-dependencies/requirements.lock | Matt Butcher | 2 |
| pkg/action/testdata/charts/chart-with-uncompressed-dependencies/requirements.yaml | Matt Butcher | 2 |
| .github/workflows/e2e.yml | Terry Howe | 1 |
| pkg/cmd/testdata/testcharts/unicode-chart-0.1.0.tgz | Terry Howe | 1 |
| pkg/cmd/testdata/testcharts/unicode-chart/Chart.yaml | Terry Howe | 1 |
| pkg/cmd/testdata/testcharts/unicode-chart/templates/NOTES.txt | Terry Howe | 1 |
| pkg/cmd/testdata/testcharts/unicode-chart/values.yaml | Terry Howe | 1 |
| test/e2e/helper_test.go | Terry Howe | 1 |
| test/e2e/oci_test.go | Terry Howe | 1 |
| test/e2e/testdata/testcharts/compressedchart-0.1.0.tgz | Terry Howe | 1 |
| test/e2e/testdata/testcharts/compressedchart-with-hyphens-0.1.0.tgz | Terry Howe | 1 |
| test/e2e/testdata/testcharts/test-0.1.0.tgz | Terry Howe | 1 |
| test/e2e/testdata/testcharts/unicode-chart-0.1.0.tgz | Terry Howe | 1 |
| pkg/cmd/testdata/output/list-json.txt | Terry Howe | 1 |
| pkg/cmd/testdata/output/list-time-format.txt | Terry Howe | 1 |
| pkg/cmd/testdata/output/list-yaml.txt | Terry Howe | 1 |
| pkg/cmd/testdata/output/list-all-date-reversed.txt | Terry Howe | 1 |
| pkg/cmd/testdata/output/list-all-max.txt | Terry Howe | 1 |
| pkg/cmd/testdata/output/list-all-no-headers.txt | Terry Howe | 1 |
| pkg/cmd/testdata/output/list-all-offset.txt | Terry Howe | 1 |
| pkg/cmd/testdata/output/list-all-reverse.txt | Terry Howe | 1 |
| pkg/cmd/testdata/output/list-all-short-json.txt | Terry Howe | 1 |
| pkg/cmd/testdata/output/list-all-short-yaml.txt | Terry Howe | 1 |
| pkg/cmd/testdata/output/list-all-short.txt | Terry Howe | 1 |
| pkg/registry/main_test.go | Terry Howe | 1 |
| pkg/provenance/keybox.go | Ruslan Shaydullin | 1 |
| pkg/provenance/keybox_test.go | Ruslan Shaydullin | 1 |
| pkg/provenance/testdata/helm-mixed-keyring.asc | Ruslan Shaydullin | 1 |
| pkg/provenance/testdata/helm-mixed-keyring.kbx | Ruslan Shaydullin | 1 |
| pkg/provenance/testdata/helm-test-key.asc | Ruslan Shaydullin | 1 |
| pkg/provenance/testdata/helm-test-key.kbx | Ruslan Shaydullin | 1 |
| pkg/provenance/testdata/regen-keyring-formats.sh | Ruslan Shaydullin | 1 |
| internal/storage/driver/cfgmaps.go | Evans Mungai | 1 |
| internal/storage/driver/cfgmaps_test.go | Evans Mungai | 1 |
| internal/storage/driver/driver.go | Evans Mungai | 1 |
| internal/storage/driver/labels.go | Evans Mungai | 1 |
| internal/storage/driver/labels_test.go | Evans Mungai | 1 |
| internal/storage/driver/memory.go | Evans Mungai | 1 |
| internal/storage/driver/memory_test.go | Evans Mungai | 1 |
| internal/storage/driver/mock_test.go | Evans Mungai | 1 |
| internal/storage/driver/records.go | Evans Mungai | 1 |
| internal/storage/driver/records_test.go | Evans Mungai | 1 |
| internal/storage/driver/secrets.go | Evans Mungai | 1 |
| internal/storage/driver/secrets_test.go | Evans Mungai | 1 |
| internal/storage/driver/sql.go | Evans Mungai | 1 |
| internal/storage/driver/sql_test.go | Evans Mungai | 1 |
| internal/storage/driver/util.go | Evans Mungai | 1 |
| internal/storage/driver/util_test.go | Evans Mungai | 1 |
| internal/release/v2/doc.go | Evans Mungai | 1 |
| internal/gates/doc.go | Evans Mungai | 1 |
| internal/gates/gates.go | Evans Mungai | 1 |
| internal/plugin/testdata/plugdir/good/postrenderer-v1/plugin.yaml | Scott Rigby | 1 |
| internal/plugin/testdata/plugdir/good/postrenderer-v1/sed-test.sh | Scott Rigby | 1 |
| pkg/cmd/testdata/helmhome/helm/plugins/postrenderer-v1/sed-test.sh | Scott Rigby | 1 |
| pkg/postrenderer/testdata/plugins/postrenderer-v1/sed-test.sh | Scott Rigby | 1 |
| internal/plugin/testdata/plugdir/good/echo-v1/plugin.yaml | Scott Rigby | 1 |
| internal/plugin/testdata/plugdir/good/hello-v1/hello.ps1 | Scott Rigby | 1 |
| internal/plugin/testdata/plugdir/good/hello-v1/plugin.yaml | Scott Rigby | 1 |
| internal/plugin/descriptor.go | Scott Rigby | 1 |
| internal/plugin/testdata/plugdir/bad/duplicate-entries-legacy/plugin.yaml | Scott Rigby | 1 |
| internal/plugin/testdata/plugdir/good/echo-legacy/plugin.yaml | Scott Rigby | 1 |
| internal/plugin/testdata/plugdir/good/hello-legacy/hello.ps1 | Scott Rigby | 1 |
| internal/plugin/testdata/plugdir/good/hello-legacy/plugin.yaml | Scott Rigby | 1 |
| pkg/cmd/testdata/helmhome/helm/plugins/noversion/plugin.yaml | George Jenkins | 1 |
| internal/chart/v3/util/testdata/dotdotname/Chart.yaml | George Jenkins | 1 |
| internal/chart/v3/util/testdata/dotname/Chart.yaml | George Jenkins | 1 |
| internal/chart/v3/util/testdata/slashinname/Chart.yaml | George Jenkins | 1 |
| pkg/chart/v2/util/testdata/dotdotname/Chart.yaml | George Jenkins | 1 |
| pkg/chart/v2/util/testdata/dotname/Chart.yaml | George Jenkins | 1 |
| pkg/chart/v2/util/testdata/slashinname/Chart.yaml | George Jenkins | 1 |
| internal/plugin/schema/doc.go | George Jenkins | 1 |
| internal/plugin/schema/test.go | George Jenkins | 1 |
| internal/plugin/testdata/src/extismv1-test/.gitignore | George Jenkins | 1 |
| internal/plugin/testdata/src/extismv1-test/Makefile | George Jenkins | 1 |
| internal/plugin/testdata/src/extismv1-test/go.mod | George Jenkins | 1 |
| internal/plugin/testdata/src/extismv1-test/go.sum | George Jenkins | 1 |
Primary owner = the author with the most commits to a file. Solely owned = files only that author has touched.
| Author | Files owned | Solely owned | Files touched |
|---|---|---|---|
| Matt Farina | 915 | 803 | 1,143 |
| Austin Abro | 403 | 393 | 553 |
| Matthieu MOREL | 182 | 0 | 359 |
| Matt Butcher | 67 | 38 | 138 |
| Adam Reese | 63 | 32 | 177 |
| George Jenkins | 52 | 15 | 262 |
| Terry Howe | 52 | 27 | 129 |
| Scott Rigby | 43 | 13 | 128 |
| Matheus Pimenta | 27 | 1 | 61 |
| Evans Mungai | 26 | 19 | 90 |
| Benoit Tigeot | 25 | 9 | 115 |
| Matthew Fisher | 19 | 1 | 113 |
| MrJack | 14 | 4 | 16 |
| Daniel Strobusch | 12 | 12 | 20 |
| tison | 9 | 2 | 35 |
| Gergo Huszty | 9 | 6 | 20 |
| fibonacci1729 | 8 | 0 | 15 |
| Stephanie Hohenberg | 7 | 4 | 25 |
| Ruslan Shaydullin | 7 | 7 | 12 |
| Mohammadreza Asadollahifard | 6 | 0 | 10 |
| Josh Dolitsky | 5 | 0 | 34 |
| Robert Sirchia | 5 | 0 | 31 |
| Sanskar Jaiswal | 5 | 0 | 18 |
| Yagnesh Mistry | 5 | 4 | 9 |
| Jeaeun Kim | 5 | 5 | 7 |
Files touched by the most people — shared code where changes are most likely to need coordination.
| File | Contributors | Primary owner | Owner share |
|---|---|---|---|
| pkg/kube/client.go | 78 | Adam Reese | 18.8% |
| pkg/action/install.go | 74 | Matt Farina | 11.2% |
| README.md | 63 | Matt Butcher | 18.4% |
| go.mod | 58 | Matt Farina | 22.4% |
| Makefile | 57 | Adam Reese | 26.6% |
| pkg/action/upgrade.go | 54 | Matt Farina | 12.3% |
| pkg/downloader/manager.go | 54 | Matt Farina | 16.3% |
| go.sum | 50 | Matt Farina | 22.8% |
| pkg/action/install_test.go | 43 | Matt Farina | 14.7% |
| pkg/engine/engine.go | 40 | Jesse Simpson | 20.3% |
| pkg/action/action.go | 37 | Matt Farina | 11.6% |
| pkg/kube/wait.go | 37 | Adam Reese | 14.9% |
| pkg/downloader/chart_downloader.go | 36 | Matt Farina | 11.4% |
| cmd/helm/helm.go | 34 | Adam Reese | 37.3% |
| pkg/cli/environment.go | 31 | Matt Farina | 13.6% |
| pkg/registry/client.go | 30 | Terry Howe | 19.0% |
| pkg/kube/client_test.go | 29 | Adam Reese | 25.2% |
| pkg/engine/engine_test.go | 29 | Matt Butcher | 24.8% |
| pkg/getter/httpgetter.go | 29 | Matthew Fisher | 12.5% |
| pkg/storage/storage.go | 28 | fibonacci1729 | 20.6% |
How Helm compares with other CNCF graduated projects →
How Helm ranks among CNCF graduated projects by AI-assisted commits →
Generate this report for your own repository with gitstats-action · All Gallery reports
Publishes the report to GitHub Pages on every push to main: turn on Pages for the gh-pages branch.
# .github/workflows/gitstats.yml
name: GitStats Report
on:
push:
branches: [main]
permissions:
contents: write
jobs:
gitstats:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
with:
fetch-depth: 0
- uses: shenxianpeng/gitstats-action@v1
with:
deploy-to-pages: true