git annex drop -- do not try to drop if key is not in backend
This commit is contained in:
parent
a0b040524a
commit
6bfa534aa4
2 changed files with 19 additions and 10 deletions
23
Commands.hs
23
Commands.hs
|
@ -165,13 +165,20 @@ getCmd file = notinBackend file err $ \(key, backend) -> do
|
|||
- if it's safe to do so. -}
|
||||
dropCmd :: FilePath -> Annex ()
|
||||
dropCmd file = notinBackend file err $ \(key, backend) -> do
|
||||
force <- Annex.flagIsSet Force
|
||||
if (not force)
|
||||
then requireEnoughCopies key
|
||||
else return ()
|
||||
success <- Backend.removeKey backend key
|
||||
if (success)
|
||||
then do
|
||||
inbackend <- Backend.hasKey key
|
||||
if (not inbackend)
|
||||
then return () -- no-op
|
||||
else do
|
||||
force <- Annex.flagIsSet Force
|
||||
if (not force)
|
||||
then requireEnoughCopies key
|
||||
else return ()
|
||||
success <- Backend.removeKey backend key
|
||||
if (success)
|
||||
then cleanup key
|
||||
else error $ "backend refused to drop " ++ file
|
||||
where
|
||||
cleanup key = do
|
||||
logStatus key ValueMissing
|
||||
inannex <- inAnnex key
|
||||
if (inannex)
|
||||
|
@ -181,8 +188,6 @@ dropCmd file = notinBackend file err $ \(key, backend) -> do
|
|||
liftIO $ removeFile loc
|
||||
return ()
|
||||
else return ()
|
||||
else error $ "backend refused to drop " ++ file
|
||||
where
|
||||
err = error $ "not annexed " ++ file
|
||||
|
||||
{- Fixes the symlink to an annexed file. -}
|
||||
|
|
6
TODO
6
TODO
|
@ -1,7 +1,11 @@
|
|||
* bug: cannot "git annex ../foo" (GitRepo.relative is buggy and
|
||||
git-ls-files also refuses w/o --full-name, which would need other changes)
|
||||
|
||||
* --push/--pull/--want
|
||||
* bug: git annex add file is silent if file was a symlink and got replaced
|
||||
with a file. The you then git command -a, you'll check in the fil contents..
|
||||
|
||||
* --push/--pull should take a reponame and files, and push those files
|
||||
to that repo; dropping them from the current repo
|
||||
|
||||
* how to handle git mv file? -> git annex fix -> run automatically?
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue