log migration trees to git-annex branch
authorJoey Hess <joeyh@joeyh.name>
Wed, 6 Dec 2023 19:38:01 +0000 (15:38 -0400)
committerJoey Hess <joeyh@joeyh.name>
Wed, 6 Dec 2023 19:40:03 +0000 (15:40 -0400)
commit0bd8b17b5954ca80c0e23e07a3f89c6e9f52e4ec
tree0b184a6da8dc1c0376ea32e556e9499bb3cfea24
parentb55efc179a32fc62901722c825fa3aa78b5ef8e5
log migration trees to git-annex branch

This will allow distributed migration: Start a migration in one clone of
a repo, and then update other clones.

commitMigration is a bit of a bear.. There is some inversion of control
that needs some TMVars. Also streamLogFile's finalizer does not handle
recording the trees, so an interrupt at just the wrong time can cause
migration.log to be emptied but the git-annex branch not updated.

Sponsored-by: Graham Spencer on Patreon
12 files changed:
Annex/Ingest.hs
Annex/Locations.hs
CmdLine/Batch.hs
Command/Migrate.hs
Command/ReKey.hs
Git/Tree.hs
Logs.hs
Logs/Migrate.hs [new file with mode: 0644]
Utility/CoProcess.hs
doc/internals.mdwn
doc/todo/distributed_migration/comment_2_fdaef5d870221d44c57fc3bd1501e7ee._comment [new file with mode: 0644]
git-annex.cabal