Currently in a git annex adjust --hide-missing branch, the only way to get missing files is to run git annex sync --content, with appropriate preferred content settings or with -C path to get a specific path. This is kind of klunky for ad-hoc getting files.

It would be possible to make git annex get, git annex copy --from remote, etc operate on hidden files. Some of the infrastructure is there; it may be as simple as using LsFiles.inRepoOrBranch instead of LsFiles.inRepo to seek the files.

Open questions:

  • Would it make more sense for this to be the default behavior when in the adjusted branch, or for it to be an option, like "--branch=master"?

    One advantage to the latter is that it would also be usable in bare repos, or if you just for some reason want to get files present in some other branch than the current one.

    The former might be easier, but it could also be kind of surprising. git annex get . would download tons of files, which ls doesn't display.

    Of course, both things could be supported too.