I have two repositories: A(direct) and B(indirect). At some point, I performed the following steps:

1. Add a file in A.
2. Sync A.
3. Sync B, but not get all files.
4. In B, remove a file F that was newly added in A, using `git rm` and `git commit`.
5. Now get all files from A.

This results in all "current" files being copied from A to B, but not file F.

If I checkout a branch in B for an older commit which still had file F, I can see the symlink created in the branch. But now if I try to get the file in B from A, annex says that the remote is not available: 

    sameerds@gajanan:/mnt/mandos/test$ git annex get
    get IMG_0570.JPG 
      Unable to access these remotes: A
    
      Try making some of these repositories available:
      	530e4f81-474d-4b0b-9f13-4beb7361302c -- A
    failed
    git-annex: get: 1 failed

The remote for A exists in the listing for `git remote`, and `git annex sync` does not make this error message go away. If I checkout `master` again, then everything works fine.

But of course, this a different problem from my original one. It would a way to bring all files from the remote, that are ever used by any commit reachable in the local git history, irrespective of the currently checkout out commit. Perhaps an option `--deep-copy` to the standard `git annex get`.
