This special remote allows downloading annexed objects from other special remotes that also publish their content by http. Not to be confused with the web special remote, or with accessing git-annex repositories over http, this is only useful in combination with some other special remote.
Suppose, for example, that you have a directory special remote. And the directory happens to be published by a web server. (Or it could be a rsync special remote, or many other kinds.) To let git-annex know that the content of this special remote can also be accessed over http, set up a httpalso special remote.
git annex initremote --sameas=foo foo-http type=httpalso url=http://example.com/foo
The --sameas parameter tells git-annex what other special remote this httpalso remote is accessing. (See multiple remotes accessing the same data store.) Since the httpalso remote is read-only, it can only be used to download content that is stored in that other remote.
This special remote is compatible with many, but not all, other special remotes. If the special remote does something unusual with the name a file is stored under, or with how the data is stored, it might not work. See multiple remotes accessing the same data store for a list of known working combinations.
configuration
url
- The http or https url to where the content is stored by the other special remote.exporttree
- If the other special remote hasexporttree=yes
set, it also needs to be set when initializing the httpalso remote. Setting this does not allow trees to be exported to the httpalso remote, because it's read-only. But it does let exported files be downloaded from it.annexobjects
- If the other special remote hasannexobjects=yes
set (along withexporttree=yes
), it also needs to be set when initializing the httpalso remote.
Configuration of encryption and chunking is inherited from the other special remote, and does not need to be specified when initializing the httpalso remote.
Is it possible to use httpalso with a standard git remote that also runs git-annex?
Also, does it support HTTP authentication?
.git/annex/objects
.@tomdhunt I think it could probably be used with a git remote that exported its .git files over http, but since git-annex supports using such a remote as a normmal git remote, there does not seem to be any point in using it that way.
http authentication is not currently supported, I suppose it could be added if useful, file a todo if you have a use case.
Hi Joey,
Another question: could the httpalso special remote be made to support mirroring remotes that enable chunking (with chunk=xxMiB)? This would in general allow anonymous access to e.g. webdav shares also published over https.
Best, KDM
I've made it support chunking.
(Please in the future post to todo rather than making a comment when you have a new feature to suggest.)
@kdm some of the hourly autobuilds are updated with it already, eg the x86-64 linux one. Others should update today. I do hope to make a release soon.