[PATCH 0/6] Improvements for ref storage formats with submodules
- From
Patrick Steinhardt <ps@pks.im>
- Date
- Aug 7, 2024, 12:43 UTC
- Message-ID
- <cover.1723032100.git.ps@pks.im>
- In-Reply-To
- <CA+osTZVApTAMogBDMaPDEVViJHrFT=BOer=Py4fjTvpsifzfKA@mail.gmail.com>
Hi,
this small patch series contains some improvements for ref storage formats and their interaction with submodules. Notably:
- Use the correct format for submodules in situations where the parent
repository uses a different ref storage format than the submodule. - Wire up `--ref-format=` for git-submodule(1), such that users can
explicitly use a different ref format for their submodules. - Propagate the `--ref-format=` flag of git-clone(1) into submodules
when using `--recursive`.The first three patches implement improvements for the above three issues and introduce tests. The test did hit some memory leaks, which get fixed by patches 3 to 6 such that the new test can be marked as leak free.
Thanks!
Patrick
Patrick Steinhardt (6): builtin/submodule: allow cloning with different ref storage format builtin/clone: propagate ref storage format to submodules refs: fix ref storage format for submodule ref stores submodule: fix leaking fetch tasks submodule: fix leaking seen submodule names object: fix leaking packfiles when closing object store
Documentation/git-submodule.txt | 5 +- builtin/clone.c | 10 ++- builtin/submodule--helper.c | 30 +++++++ git-submodule.sh | 9 ++ object.c | 9 ++ refs.c | 2 +- submodule.c | 18 ++-- t/t5572-pull-submodule.sh | 1 + t/t7418-submodule-sparse-gitmodules.sh | 1 + t/t7424-submodule-mixed-ref-formats.sh | 120 +++++++++++++++++++++++++ 10 files changed, 191 insertions(+), 14 deletions(-) create mode 100755 t/t7424-submodule-mixed-ref-formats.sh
-- 2.46.0.dirty