whereis: Support --all.
This commit is contained in:
parent
e72aafac7a
commit
85398d068e
2 changed files with 15 additions and 4 deletions
|
@ -14,20 +14,30 @@ import Command
|
|||
import Remote
|
||||
import Logs.Trust
|
||||
import GitAnnex.Options
|
||||
import Types.Key
|
||||
|
||||
def :: [Command]
|
||||
def = [noCommit $ withOptions [jsonOption] $
|
||||
def = [noCommit $ withOptions (jsonOption : keyOptions) $
|
||||
command "whereis" paramPaths seek SectionQuery
|
||||
"lists repositories that have file content"]
|
||||
|
||||
seek :: CommandSeek
|
||||
seek ps = do
|
||||
m <- remoteMap id
|
||||
withFilesInGit (whenAnnexed $ start m) ps
|
||||
withKeyOptions
|
||||
(startKeys m)
|
||||
(withFilesInGit $ whenAnnexed $ start m)
|
||||
ps
|
||||
|
||||
start :: M.Map UUID Remote -> FilePath -> (Key, Backend) -> CommandStart
|
||||
start remotemap file (key, _) = do
|
||||
showStart "whereis" file
|
||||
start remotemap file (key, _) = start' remotemap key (Just file)
|
||||
|
||||
startKeys :: M.Map UUID Remote -> Key -> CommandStart
|
||||
startKeys remotemap key = start' remotemap key Nothing
|
||||
|
||||
start' :: M.Map UUID Remote -> Key -> AssociatedFile -> CommandStart
|
||||
start' remotemap key afile = do
|
||||
showStart "whereis" (fromMaybe (key2file key) afile)
|
||||
next $ perform remotemap key
|
||||
|
||||
perform :: M.Map UUID Remote -> Key -> CommandPerform
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue