update for distributed migration
authorJoey Hess <joeyh@joeyh.name>
Fri, 8 Dec 2023 18:39:38 +0000 (14:39 -0400)
committerJoey Hess <joeyh@joeyh.name>
Fri, 8 Dec 2023 18:39:38 +0000 (14:39 -0400)
doc/tips/migrating_data_to_a_new_backend.mdwn

index b9acb8bd15b16fc0f581e3ff45fc2f3e5b1b7a0f..d81a42e0f9287fca69c34ee2b2c186bffcf0d389 100644 (file)
@@ -1,14 +1,29 @@
-Maybe you started out using the WORM backend, and have now configured
-git-annex to use SHA1. But files you added to the annex before still
-use the WORM backend. There is a simple command that can migrate that
+Maybe you started out using the SHA1 backend, and have now configured
+git-annex to use SHA256. But files you added to the annex before still
+use the SHA1 backend. There is a simple command that can migrate that
 data:
 
        # git annex migrate my_cool_big_file
        migrate my_cool_big_file (checksum...) ok
 
+This stages a change to the file, which you can `git commit` like any other
+change.
+
 You can only migrate files whose content is currently available. Other
 files will be skipped.
 
+## distributed migration
+
+When you pull changes into your repository that include migration of files,
+your repository then needs to be updated to follow the migration.
+
+    # git-annex migrate --update
+       migrate my_cool_big_file (checksum...) ok
+
+This is done automatically by commands like `git-annex pull`.
+
+## unused old content
+
 After migrating a file to a new backend, the old content in the old backend
 will still be present. That is necessary because multiple files
 can point to the same content. The `git annex unused` subcommand can be