commit e016e61067cb2f0b9e60bd6127aff65dc1f977ec from: Omar Polo date: Tue Aug 06 20:30:46 2024 UTC work around thin bundles in regress and add a TODO git bundle hardcodes --thin when using an exclude base and doesn't provide a way to disable it. Somehow, currently, it decides to use a thin pack only in sha256 and not in sha1. For now however, change that test to use gotadmin dump instead to generate an incremental bundle. We'll have to support in some ways the thin packs to be completely compatible with git bundles, so add a TODO. discussed with stsp. commit - 29c7fcc49ae1b5ddcdfad436b7a1689b22c40cd2 commit + e016e61067cb2f0b9e60bd6127aff65dc1f977ec blob - 31443a1e068d94872c495a4437cb1990ba777c65 blob + a2ea4918346e2f063a2003d0c7d0bcbabf8cb44c --- TODO +++ TODO @@ -76,3 +76,5 @@ gotadmin: - add support for generating git-fast-export streams from a repository - add support for importing git-fast-export streams into a repository - speed up 'gotadmin pack -a' is too slow on repositories with many pack files +- support "thin" bundles; git will hardcode --thin when using an + exclude base. blob - 31af9d1824061e6a3c03dc083717d9ef864769bd blob + 469333581fa7db2a210f2fa7b4f5c79af191d4a0 --- regress/cmdline/load.sh +++ regress/cmdline/load.sh @@ -50,8 +50,13 @@ test_load_bundle() { echo "modified alpha in master" >$testroot/repo/alpha git_commit "$testroot/repo" -m "edit alpha in master" - git -C "$testroot/repo" bundle create -q \ - "$testroot/bundle" "$base..master" + # XXX git outputs a "thin pack" when making bundles using an + # exclude base and doesn't provide a way to generate "thick" + # packs; use gotadmin since we don't support them. + #git -C "$testroot/repo" bundle create -q \ + # "$testroot/bundle" "$base..master" + gotadmin dump -q -r "$testroot/repo" -x "$base" master \ + > "$testroot/bundle" (cd "$testroot/repo2" && gotadmin load < "$testroot/bundle") >/dev/null if [ $? -ne 0 ]; then