29 lines
1.4 KiB
Markdown
29 lines
1.4 KiB
Markdown
A remote like the directory special remote can have objects that have not
|
|
been fully transferred to it by an interrupted copy, that linger until the
|
|
copy is re-run and the content gets fully sent to the remote. It would be
|
|
good if `git-annex unused` could find and clean up such things, like it
|
|
does for incomplete transfers into a git-annex repository.
|
|
|
|
In the directory special remote, these are files named "tmp/$key/$key".
|
|
|
|
This would need to be an extension to the remote interface to add an action
|
|
to find when a key has such a file, and an action to delete one of them.
|
|
|
|
A problem is that any such file might actually still be in the process
|
|
of being sent, perhaps from a different repository than the one where
|
|
`git-annex unused` is being run. So deleting such a file could cause that
|
|
transfer to fail. This problem seems unavoidable generally.
|
|
|
|
----
|
|
|
|
It's also possible for a special remote to get keys stored in it which
|
|
git-annex does not know about. For example, in a temporary clone of the
|
|
git-annex repository, add a new file. Send it to the special remote. Then
|
|
delete the temporary clone.
|
|
|
|
`git-annex unused --from` can't detect those keys, because it can only ask
|
|
the special remote about presence of keys that it knows about.
|
|
|
|
Might it be possible to solve both problems together? Eg, add an action
|
|
that has the special remote list all keys and partial keys present in it.
|
|
--[[Joey]]
|