extend manifest with keys to be deleted

This will eventually be used to recover from an interrupted fullPush
and drop the old bundle keys it was unable to delete.

Sponsored-by: Luke T. Shumaker on Patreon
This commit is contained in:
Joey Hess 2024-05-13 09:03:43 -04:00
parent 1f62bc861a
commit 97b309b56e
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
3 changed files with 31 additions and 7 deletions

View file

@ -12,6 +12,10 @@ GITBUNDLE--$UUID-sha256 is a git bundle.
An ordered list of bundle keys, one per line.
Additionally, there may be bundle keys that are prefixed with "-".
These keys are not part of the current content of the git remote
and are in the process of being deleted.
(Lines end with unix `"\n"`, not `"\r\n"`.)
# multiple GITMANIFEST files

View file

@ -33,6 +33,9 @@ This is implememented and working. Remaining todo list for it:
to clone from a wrong url, since it fails to download
a manifest and so appears as if the remote is empty.
* Improve recovery from interrupted push by using outManifest to clean up
after it. (Requires populating outManifest.)
* See XXX in uploadManifest about recovering from a situation
where the remote is left with a deleted manifest when a push
is interrupted part way through. This should be recoverable