Allow use of --unused in bare repository.

This commit is contained in:
Joey Hess 2013-11-27 06:50:20 -04:00
parent 1260ffd8bd
commit c981b2dc3c
2 changed files with 6 additions and 3 deletions

View file

@ -141,13 +141,15 @@ withNothing _ _ = error "This command takes no parameters."
withKeyOptions :: (Key -> CommandStart) -> CommandSeek -> CommandSeek withKeyOptions :: (Key -> CommandStart) -> CommandSeek -> CommandSeek
withKeyOptions keyop fallbackop params = do withKeyOptions keyop fallbackop params = do
bare <- fromRepo Git.repoIsLocalBare bare <- fromRepo Git.repoIsLocalBare
allkeys <- Annex.getFlag "all" <||> pure bare allkeys <- Annex.getFlag "all"
unused <- Annex.getFlag "unused" unused <- Annex.getFlag "unused"
auto <- Annex.getState Annex.auto auto <- Annex.getState Annex.auto
case (allkeys , unused, auto ) of case (allkeys || bare , unused, auto ) of
(True , False , False) -> go loggedKeys (True , False , False) -> go loggedKeys
(False , True , False) -> go unusedKeys (False , True , False) -> go unusedKeys
(True , True , _ ) -> error "Cannot use --all with --unused." (True , True , _ )
| bare && not allkeys -> go unusedKeys
| otherwise -> error "Cannot use --all with --unused."
(False , False , _ ) -> fallbackop params (False , False , _ ) -> fallbackop params
(_ , _ , True ) (_ , _ , True )
| bare -> error "Cannot use --auto in a bare repository." | bare -> error "Cannot use --auto in a bare repository."

1
debian/changelog vendored
View file

@ -21,6 +21,7 @@ git-annex (5.20131121) UNRELEASED; urgency=low
* Futher improvements to git repo repair. Has now been tested in tens * Futher improvements to git repo repair. Has now been tested in tens
of thousands of intentionally damaged repos, and successfully of thousands of intentionally damaged repos, and successfully
repaired them all. repaired them all.
* Allow use of --unused in bare repository.
-- Joey Hess <joeyh@debian.org> Wed, 20 Nov 2013 18:30:47 -0400 -- Joey Hess <joeyh@debian.org> Wed, 20 Nov 2013 18:30:47 -0400