| #!/bin/sh | 
 |  | 
 | test_description='performance of partial clones' | 
 | . ./perf-lib.sh | 
 |  | 
 | test_perf_default_repo | 
 |  | 
 | test_expect_success 'enable server-side config' ' | 
 | 	git config uploadpack.allowFilter true && | 
 | 	git config uploadpack.allowAnySHA1InWant true | 
 | ' | 
 |  | 
 | test_perf 'clone without blobs' ' | 
 | 	rm -rf bare.git && | 
 | 	git clone --no-local --bare --filter=blob:none . bare.git | 
 | ' | 
 |  | 
 | test_perf 'checkout of result' ' | 
 | 	rm -rf worktree && | 
 | 	mkdir -p worktree/.git && | 
 | 	tar -C bare.git -cf - . | tar -C worktree/.git -xf - && | 
 | 	git -C worktree config core.bare false && | 
 | 	git -C worktree checkout -f | 
 | ' | 
 |  | 
 | test_perf 'fsck' ' | 
 | 	git -C bare.git fsck | 
 | ' | 
 |  | 
 | test_perf 'count commits' ' | 
 | 	git -C bare.git rev-list --all --count | 
 | ' | 
 |  | 
 | test_perf 'count non-promisor commits' ' | 
 | 	git -C bare.git rev-list --all --count --exclude-promisor-objects | 
 | ' | 
 |  | 
 | test_perf 'gc' ' | 
 | 	git -C bare.git gc | 
 | ' | 
 |  | 
 | test_done |