On Tue, Feb 09, 2021 at 04:44:27PM -0800, Junio C Hamano wrote: > Jeff King <peff@xxxxxxxx> writes: > > > Here's a re-roll of my series to add "rev-list --disk-usage", for > > counting up object storage used for various slices of history. > > ... > > t/t6114-rev-list-du.sh | 51 +++++++++++++++++++ > > t/test-lib-functions.sh | 9 +++- > > 7 files changed, 199 insertions(+), 8 deletions(-) > > create mode 100755 t/t6114-rev-list-du.sh > > I relocated 6114 to 6115 to avoid tests sharing the same number. Thanks. > I am getting these numbers from random ranges I am interested in, > but do they say what I think they mean? Was the development effort > went into the v2.28 release almost half the size of v2.29, and have > we already done about the same amont of work for this cycle? > > : gitster git.git/seen; rungit seen rev-list --disk-usage master..next > 83105 > : gitster git.git/seen; rungit seen rev-list --disk-usage v2.30.0..master > 183463 > : gitster git.git/seen; rungit seen rev-list --disk-usage v2.29.0..v2.30.0 > 231640 > : gitster git.git/seen; rungit seen rev-list --disk-usage v2.28.0..v2.29.0 > 334355 > : gitster git.git/seen; rungit seen rev-list --disk-usage v2.27.0..v2.28.0 > 182298 I think you are surprised by these numbers because you're only counting disk usage of commit objects in those ranges. v1 of this series implied --objects by default, but this changed in v2 due to my suggestion. Passing --objects to count the disk-usage of all objects in those ranges gives more reasonable numbers (and match my rough guesses, i.e., that 2.29 was busier than 2.30, and so on): $ for range in origin/master..origin/next v2.30.0..origin/master \ v2.29.0..v2.30.0 v2.28.0..v2.29.0 v2.27.0..v2.28.0 do printf "%s %d vs. %d\n" $range \ "$(git rev-list --objects --no-object-names $range | git cat-file --batch-check='%(objectsize:disk)' | paste -sd+ | bc)" \ "$(git.seen rev-list --objects --disk-usage $range)" done origin/master..origin/next 671380 vs. 671380 v2.30.0..origin/master 1618815 vs. 1618815 v2.29.0..v2.30.0 3308295 vs. 3308295 v2.28.0..v2.29.0 4080789 vs. 4080789 v2.27.0..v2.28.0 2846196 vs. 2846196 Thanks, Taylor