Hi,
On 6/20/24 02:07, Matthias Urlichs wrote:
If dgit becomes the archive, not being able to mirror it is a major
regression.
It's not quite as trivial as I'd like to pack git archives (shallow or
not) so that they can be mirrored and mostly-seamlessly unpacked at the
destination, but it's possible. You can even do it incrementally.
git-bundle should do that nicely.
I'd really like to have a shallow bundle of the upstream commit as the
orig archive, together with a git-debrebase-like workflow where patches
are commits. The dsc would then refer to the (possibly signed) tag or
commit by checksum, instead of using a checksum for the bundle, that
makes it reproducible even if the bundle format changes, and allows
upstream bundles to be reused as if they were tarballs.
Such a format would be opinionated about workflow, though. It could
potentially be made a bit workflow-agnostic by specifying a different
layout in the dsc (this is something I'd make explicit instead of
autodetecting), but the non-rebasing repo layouts cannot be converted to
shallow bundles easily, or if they can, the patches are no longer
separate commits and cannot be matched against upstream commits.
Simon