I am following the guide on Fully encrypted git repositories with gcrypt to restore data to a new computer.
On my old computer, I was using a removable hard drive with a bare repo as my remote. Before migrating, I moved all contents to this repository.
I follow the relevant steps exactly:
git clone gcrypt::/media/me/path_to_repo clone
cd clone
git annex enableremote path_to_repo gitrepo=/media/me/path_to_repo
Now git annex sync
reports success for both origin
and path_to_repo
. But git annex sync --content
fails with:
Unable to access these remotes: path_to_repo
Try making some of these repositories available:
a3f8a46a-60fe-58e2-901b-2c093bcc22d3 -- [path_to_repo]
The sync with origin
works, but as soon as it starts trying to get the content it reports the above.
git annex get --from path_to_repo
reports no output.
Why does it say this when the repo is clearly available, seeing as I can do git annex sync? (at least -- as far as I can understand it ...)
I'm sorry I can't provide more detailed/to the point information. I am very befuddled by this behavior. Trying to understand how git annex works, I wonder if there is some information in my old 'checkout' repo which git annex needs to be able to recognize which repo is where? But my new clone has the correct repo uuid under the entry for path_to_repo
in .git/config
, so I don't understand why it doesn't know about it.
thanks!
I'm really trying to understand how git annex is thinking about remote locations. If I add more remotes with the same repository URL, git annex does not pick up on them even though it seems to be syncing the branches from them. Whenever I try to get data, it complains that the original remote is unavailable. What is git-annex's logic about locating or identifying remotes? Does it have to do with the uuid?
If I go into my backed up original checkout repo and try to get data, it also complains about not being able to find the original remote. They backup and the original bare repo both happen to be on the same hard drive, and they can talk to each other to sync branches. The url did change: first the drive was on 'Elements1' and now on 'Elements' but to my mind, if git can clone the repo, what is git-annex expecting differently?
I tried following the process given in that tip, and it works as it's supposed to.
The easiest way to reproduce the error message you've reported is:
Is "path_to_repo" a unix path, with slashes in it? It's hard for me to understand if you've obfuscated that, or if you literally used the string "path_to_repo" there.
A complete un-edited transcript would clarify things a lot.
A repository url tells git or git-annex where to access a repository. A repository's uuid tells git-annex which repository it is.