28e2cad849
* Only export to remotes that were initialized to support it. * Prevent storing key/value on export remotes. * Prevent enabling exporttree=yes and encryption in the same remote. SetupStage Enable was changed to take the old RemoteConfig. This allowed only setting exporttree when initially setting up a remote, and not configuring it later after stuff might already be stored in the remote. Went with =yes rather than =true for consistency with other parts of git-annex. Changed docs accordingly. This commit was supported by the NSF-funded DataLad project.
34 lines
1.5 KiB
Markdown
34 lines
1.5 KiB
Markdown
`git annex export` corresponding to import. This might be useful for eg,
|
|
datalad. There are some requests to make eg a S3 bucket mirror the
|
|
filenames in the git annex repository with incremental updates,
|
|
which seem out of scope (and there are many tools to do stuff like that
|
|
search "deploy files to S3 bucket"),
|
|
but something simpler like `git annex export` could be worth doing.
|
|
|
|
`git annex export --to remote files` would copy the files to the remote,
|
|
using the names in the working tree. For remotes like S3, it could add the
|
|
url of the exported file, so that another clone of the repo could use the
|
|
exported data.
|
|
|
|
Would this be able to reuse the existing `storeKey` interface, or would
|
|
there need to be a new interface in supported remotes?
|
|
|
|
--[[Joey]]
|
|
|
|
Work is in progress. Todo list:
|
|
|
|
* Use retrieveExport when getting from export remotes.
|
|
(Needs a map from key to ExportLocation)
|
|
* Efficient handling of renames.
|
|
* If the same content is present in two different files, export
|
|
location tracking can be messed up.
|
|
|
|
When one of the files is deleted and
|
|
that tree is exported, the location log for the key will be updated
|
|
to say it's not present, even though the other file is still present.
|
|
|
|
And, once one of the files is uploaded, the location log will
|
|
say the content is present, so the pass over the tree won't try to
|
|
upload the other file. (See design for a fix for this.)
|
|
* Support export to aditional special remotes (S3 etc)
|
|
* Support export to external special remotes.
|