rename to annexobjects location on unexport
This avoids needing to re-upload the file again to get it to the annexobjects location, which git-annex sync was doing when it was preferred content. If the file is not preferred content, sync will drop it from the annexobjects location. If the file has been deleted from the tree, it will remain in the annexobjects location until an unused/dropunused pass is done.
This commit is contained in:
parent
6b63449133
commit
a3d96474f2
4 changed files with 45 additions and 25 deletions
|
@ -33,12 +33,20 @@ Planned schedule of work:
|
|||
* Working on `exportreeplus` branch which is groundwork for proxying to
|
||||
exporttree=yes special remotes.
|
||||
|
||||
* `git-annex export` when unexporting a deleted file from the tree should
|
||||
rename it to the annexobjects location. This would avoid needing to
|
||||
re-upload it again in the case where it's preferred content of the
|
||||
remote. Currently eg, a sync will unexport the file and then re-upload
|
||||
it. If it's not preferred content, sync will drop it from the
|
||||
annexobjects location.
|
||||
* `git-annex export` when exporting a file should rename it from the
|
||||
annexobjects location when it's present there. This will avoid redundant
|
||||
uploads.
|
||||
|
||||
An example case where this is important: Proxying to a exporttree remote,
|
||||
a file is uploaded to it but is not yet in an exported tree. When the
|
||||
exported tree is pushed, the remote needs to be updated by exporting to
|
||||
it. In this case, the proxy doesn't have a copy of the file, so it would
|
||||
need to download it from annexobjects before uploading it to the final
|
||||
location. With this optimisation, it can just rename it.
|
||||
|
||||
However: If a key is used twice in an exported tree, it seems a proxy
|
||||
will need to download and reupload anyway. Unless a copy operation is
|
||||
added to exporttree remotes..
|
||||
|
||||
## items deferred until later for p2p protocol over http
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue