#12 Git repository restore script

Open
opened 1 year ago by JustAnotherArchivist · 0 comments

Restoring a Git repo from the bundles requires some careful treatment to ensure that the restored repo is really identical to the state at the time of archival, in particular if there are deleted branches or similar.

The workflow of the script would probably go something like this:

  1. Create a new empty repo
  2. Retrieve the index for the supplied bundle, and fetch from the bundle
  3. If the bundle is based other bundles, fetch those as well, recursively
  4. Delete all refs (probably temporarily disabling GC), then set all refs on the supplied bundle index

I’m not sure that actually works or it needs to be built from the oldest bundle instead since the newer bundles would only contain incomplete packs.

Restoring a Git repo from the bundles requires some careful treatment to ensure that the restored repo is really identical to the state at the time of archival, in particular if there are deleted branches or similar. The workflow of the script would probably go something like this: 1. Create a new empty repo 2. Retrieve the index for the supplied bundle, and fetch from the bundle 3. If the bundle is based other bundles, fetch those as well, recursively 4. Delete all refs (probably temporarily disabling GC), then set all refs on the supplied bundle index I'm not sure that actually works or it needs to be built from the oldest bundle instead since the newer bundles would only contain incomplete packs.
JustAnotherArchivist added the
module:git
label 1 year ago
JustAnotherArchivist added the
enhancement
label 1 year ago
Sign in to join this conversation.
No Milestone
No Assignees
1 Participants
Notifications
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
There is no content yet.