Bump On Mon, Oct 28, 2024 at 4:00 PM Manoraj K <mkenchugonde@xxxxxxxxxxxxx> wrote: > > Hi, > > We've conducted benchmarks comparing Git operations between a fully > cloned and partially cloned repository (both using sparse-checkout). > We'd like to understand the technical reasons behind the consistent > performance gains we're seeing in the partial clone setup. > > Benchmark Results: > > Full Clone + Sparse-checkout: > - .git size: 8.5G > - Git index size: 20MB > - Pack objects: 18,761,646 > - Operations (mean ± std dev): > * git status: 0.634s ± 0.004s > * git commit: 2.677s ± 0.019s > * git checkout branch: 0.615s ± 0.005s > * git pull (no changes): 5.983s ± 0.391s > > Partial Clone + Sparse-checkout: > - .git size: 2.0G > - Git index size: 20MB > - Pack objects: 13,560,436 > - Operations (mean ± std dev): > * git status: 0.575s ± 0.012s (9.3% faster) > * git commit: 2.164s ± 0.032s (19.2% faster) > * git checkout branch: 0.724s ± 0.154s > * git pull (no changes): 1.866s ± 0.018s (68.8% faster) > > Key Questions: > 1. What are the technical factors causing these performance > improvements in the partial clone setup? > 2. To be able to get these benefits, is there a way to convert our > existing fully cloned repository to behave like a partial clone > without re-cloning from scratch? > > Appreciate any insights here. > > Best regards, > Manoraj K