From: Mark C. Chu-Carroll Date: Wed, 21 Oct 2026 13:55:04 GMT Subject: [PATCH 0/3] repo: add degree-of-concern reporting to structure Message-ID: <20261021-b4-repo-structure-concern-v1-0-e3010552292c@fastmail.com> "git repo structure" computes a set of statistics that are useful for diagnosing performance issues in a git repository. But for a typical user who hasn't encountered any issues yet, it can be difficult to interpret the data - when should a value be considered concerning? This patchset introduces a feature to "git repo structure" that reports on how concerning certain measures of storage structure are for a repository. In table mode, concern is displayed as a column containing a number of stars indicating the degree of concern; in line or nul mode, concerns are displayed as additional lines with a numeric value. To select defaults for the thresholds where a value becomes concern, a (hopefully) representative selection of repositories were analyzed. Based on empirical exploration of the data, the measurement that seemed closest to accurately assessing when a repository's structure becomes concerning was based on the base 2 logarithm of the value. Across all of the sample repositories, for all of the measurements, the point at which things become problematic was when a base 2 logarithm of a value was more than 1 standard deviation from the mean of the log_2 values in the sample set. Based on this, the concern threshold was set for each of the measures. While this seems like a reasonable approach for setting default thresholds, it's obviously still very ad-hoc. It's likely that over time, the default values will evolve; and in the short term, projects may want to set their own thresholds. So this patchset includes support for configuring the thresholds on a per-reposiry basis. Overview of the change: * The first commit adds the command-line option "--concern", and creates the basic implementation of concern reporting. * The next commit adds configurability for the concern thresholds. * The final commit update the documentation for the command and configuration options. Signed-off-by: Mark C. Chu-Carroll --- Mark C. Chu-Carroll (3): repo: add level of concern reporting repo: make concern thresholds configurable repo: add documentation for level-of-concern. Documentation/config/repo.adoc | 60 ++++++++ Documentation/git-repo.adoc | 27 +++- builtin/repo.c | 335 ++++++++++++++++++++++++++++++++++++++--- t/t1901-repo-structure.sh | 134 +++++++++++++++++ 4 files changed, 535 insertions(+), 21 deletions(-) --- base-commit: 3bc0341126508f78f5869cbfc0005e987efdf0c7 change-id: 20261019-b4-repo-structure-concern-f1d6f6326095