git-annex/CmdLine
Joey Hess 34a6db4f15
improve recovery from interrupted push
On push, first try to drop all outManifest keys listed in the current
manifest file, which resumes from an interrupted push that didn't
get a chance to delete those keys.

The new manifest gets its outManifest populated with the keys that were
in the old manifest, plus any of the keys that were unable to be
dropped.

Note that it would be possible for uploadManifest to skip dropping old
keys at all. The old keys would get dropped on the next push. But it
seems better to delete stuff immediately rather than waiting. And the
extra work is limited to push and typically is small.

A remote where dropKey always fails will result in an outManifest that
grows longer and longer. It would be possible to check if the remote
has appendonly = True and avoid populating the outManifest. Of course,
an appendonly remote will grow with every git push anyway. And currently
only Remote.GitLFS sets that, which can't be used as a git-remote-annex
remote anyway.
2024-05-20 13:49:45 -04:00
..
GitAnnex Change --copies' meta parameter to NUMBER 2024-04-30 15:16:22 -04:00
GitAnnexShell uninit: Support --json and --json-error-messages 2023-05-11 13:43:02 -04:00
Action.hs Fix display when run with -J1 2023-06-15 10:07:54 -04:00
AnnexSetter.hs remove --backend from global options 2022-06-29 13:33:25 -04:00
Batch.hs log migration trees to git-annex branch 2023-12-06 15:40:03 -04:00
GitAnnex.hs add reregisterurl command 2024-03-05 15:06:14 -04:00
GitAnnexShell.hs Override safe.bareRepository for git remotes 2023-09-07 14:56:26 -04:00
GitRemoteAnnex.hs improve recovery from interrupted push 2024-05-20 13:49:45 -04:00
GitRemoteTorAnnex.hs fix name of gitremote-helpers 2024-05-06 12:07:05 -04:00
Option.hs initial implementation of --explain 2023-07-25 16:52:57 -04:00
Seek.hs add startAction parameter for KeySha 2023-12-06 13:28:02 -04:00
Usage.hs add FIELD?=GLOB to git-annex view usage 2023-02-07 18:09:10 -04:00