rework annex-ignore handling

Only one place need to filter the list of remotes for ignored remotes:
keyPossibilities. Make the full list available to everything else.

This allows getting rid of the special case handing for --from and --to
to make ignored remotes not be ignored with those options.
This commit is contained in:
Joey Hess 2011-09-18 20:11:39 -04:00
parent d78b9f7d54
commit dd463a3100
11 changed files with 24 additions and 25 deletions

View file

@ -82,18 +82,10 @@ prop_cost_sane = False `notElem`
{- Checks if a repo should be ignored, based either on annex-ignore
- setting, or on command-line options. Allows command-line to override
- annex-ignore. -}
remoteNotIgnored :: Git.Repo -> Annex Bool
remoteNotIgnored r = do
repoNotIgnored :: Git.Repo -> Annex Bool
repoNotIgnored r = do
ignored <- getConfig r "ignore" "false"
to <- match Annex.toremote
from <- match Annex.fromremote
if to || from
then return True
else return $ not $ Git.configTrue ignored
where
match a = do
n <- Annex.getState a
return $ n == Git.repoRemoteName r
return $ not $ Git.configTrue ignored
{- If a value is specified, it is used; otherwise the default is looked up
- in git config. forcenumcopies overrides everything. -}