diff options
author | Joey Hess <joeyh@joeyh.name> | 2016-06-09 15:17:08 -0400 |
---|---|---|
committer | Joey Hess <joeyh@joeyh.name> | 2016-06-09 15:17:08 -0400 |
commit | 37bc59962a9546682ae596e2c65099ca76accff2 (patch) | |
tree | a158ab8e8f3c79e61ea6a121e89e2fa22772be7f /Annex | |
parent | 37b2a0d1ab5b0485869df3c91c81de021a11f185 (diff) |
Make git clean filter preserve the backend that was used for a file.
Diffstat (limited to 'Annex')
-rw-r--r-- | Annex/Ingest.hs | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/Annex/Ingest.hs b/Annex/Ingest.hs index 95bbff496..7b1db8aa7 100644 --- a/Annex/Ingest.hs +++ b/Annex/Ingest.hs @@ -11,6 +11,7 @@ module Annex.Ingest ( lockDown, ingestAdd, ingest, + ingest', finishIngestDirect, finishIngestUnlocked, cleanOldKeys, @@ -140,9 +141,12 @@ ingestAdd ld@(Just (LockedDown cfg source)) = do - tree or the index. -} ingest :: Maybe LockedDown -> Annex (Maybe Key, Maybe InodeCache) -ingest Nothing = return (Nothing, Nothing) -ingest (Just (LockedDown cfg source)) = withTSDelta $ \delta -> do - backend <- chooseBackend $ keyFilename source +ingest = ingest' Nothing + +ingest' :: Maybe Backend -> Maybe LockedDown -> Annex (Maybe Key, Maybe InodeCache) +ingest' _ Nothing = return (Nothing, Nothing) +ingest' preferredbackend (Just (LockedDown cfg source)) = withTSDelta $ \delta -> do + backend <- maybe (chooseBackend $ keyFilename source) (return . Just) preferredbackend k <- genKey source backend let src = contentLocation source ms <- liftIO $ catchMaybeIO $ getFileStatus src |