add: If interrupted, add can leave files converted to symlinks but not yet added to git. Running the add again will now clean up this situtation.

This commit is contained in:
Joey Hess 2011-12-07 16:53:53 -04:00
parent d2ff311a34
commit 8047bba5b9
3 changed files with 20 additions and 10 deletions

View file

@ -13,7 +13,7 @@ module Command (
prepCommand,
doCommand,
whenAnnexed,
notAnnexed,
ifAnnexed,
notBareRepo,
isBareRepo,
autoCopies,
@ -71,10 +71,10 @@ doCommand = start
{- Modifies an action to only act on files that are already annexed,
- and passes the key and backend on to it. -}
whenAnnexed :: (FilePath -> (Key, Backend Annex) -> Annex (Maybe a)) -> FilePath -> Annex (Maybe a)
whenAnnexed a file = maybe (return Nothing) (a file) =<< Backend.lookupFile file
whenAnnexed a file = ifAnnexed file (a file) (return Nothing)
notAnnexed :: FilePath -> Annex (Maybe a) -> Annex (Maybe a)
notAnnexed file a = maybe a (const $ return Nothing) =<< Backend.lookupFile file
ifAnnexed :: FilePath -> ((Key, Backend Annex) -> Annex a) -> (Annex a) -> Annex a
ifAnnexed file yes no = maybe no yes =<< Backend.lookupFile file
notBareRepo :: Annex a -> Annex a
notBareRepo a = do