git-annex-migrate(1)

NAME
git-annex-migrate - switch data to different backend

SYNOPSIS
git annex migrate [path ...]

DESCRIPTION
Changes the specified annexed files to use the default key-value backend (or the one specified with --backend). Only files whose content is currently available are migrated.

Note that the content is also still available using the old key after migration. Use git annex unused to find and remove the old key.

Normally, nothing will be done to files already using the new backend. However, if a backend changes the information it uses to construct a key, this can also be used to migrate files to use the new key format.

When you have multiple repositories that each contain a copy of a file, it's best to run migrate in all of them.

OPTIONS

--backend

    Specify the new key-value backend to use for migrated data.

--force
    Force migration of keys that are already using the new backend.

file matching options
    The git-annex-matching-options(1) can be used to specify files to migrate.

Also the git-annex-common-options(1) can be used.

--remove-size
    Keys often include the size of their content, which is generally a useful thing. In fact, this command defaults to adding missing size information to keys. With this option, the size information is removed instead.

    One use of this option is to convert URL keys that were added by git-annex addurl --fast to ones that would have been added if that command was run with the --relaxed option. Eg:

     git-annex migrate --remove-size --backend=URL somefile

--json
    Enable JSON output. This is intended to be parsed by programs that use git-annex. Each line of output is a JSON object.

--json-error-messages
    Messages that would normally be output to standard error are included in the JSON instead.

SEE ALSO
git-annex(1)

git-annex-upgrade(1)

git-annex-backend(1)

AUTHOR
Joey Hess <id@joeyh.name>