2012-05-02 18:59:05 +00:00
|
|
|
|
{- git-annex command
|
|
|
|
|
-
|
|
|
|
|
- Copyright 2012 Joey Hess <joey@kitenet.net>
|
|
|
|
|
-
|
|
|
|
|
- Licensed under the GNU GPL version 3 or higher.
|
|
|
|
|
-}
|
|
|
|
|
|
|
|
|
|
module Command.AddUnused where
|
|
|
|
|
|
|
|
|
|
import Common.Annex
|
|
|
|
|
import Logs.Unused
|
2013-04-11 17:35:52 +00:00
|
|
|
|
import Logs.Location
|
2012-05-02 18:59:05 +00:00
|
|
|
|
import Command
|
|
|
|
|
import qualified Command.Add
|
2012-08-08 20:06:01 +00:00
|
|
|
|
import Types.Key
|
2012-05-02 18:59:05 +00:00
|
|
|
|
|
|
|
|
|
def :: [Command]
|
2012-12-29 18:28:19 +00:00
|
|
|
|
def = [notDirect $ command "addunused" (paramRepeating paramNumRange)
|
2013-03-24 22:28:21 +00:00
|
|
|
|
seek SectionMaintenance "add back unused files"]
|
2012-05-02 18:59:05 +00:00
|
|
|
|
|
|
|
|
|
seek :: [CommandSeek]
|
|
|
|
|
seek = [withUnusedMaps start]
|
|
|
|
|
|
|
|
|
|
start :: UnusedMaps -> Int -> CommandStart
|
2012-12-29 18:28:19 +00:00
|
|
|
|
start = startUnused "addunused" perform
|
|
|
|
|
(performOther "bad")
|
|
|
|
|
(performOther "tmp")
|
2012-05-02 18:59:05 +00:00
|
|
|
|
|
|
|
|
|
perform :: Key -> CommandPerform
|
2013-04-11 17:35:52 +00:00
|
|
|
|
perform key = next $ do
|
|
|
|
|
logStatus key InfoPresent
|
|
|
|
|
Command.Add.addLink file key False
|
|
|
|
|
return True
|
2012-11-12 05:05:04 +00:00
|
|
|
|
where
|
|
|
|
|
file = "unused." ++ key2file key
|
2012-05-02 18:59:05 +00:00
|
|
|
|
|
|
|
|
|
{- The content is not in the annex, but in another directory, and
|
|
|
|
|
- it seems better to error out, rather than moving bad/tmp content into
|
|
|
|
|
- the annex. -}
|
|
|
|
|
performOther :: String -> Key -> CommandPerform
|
|
|
|
|
performOther other _ = error $ "cannot addunused " ++ other ++ "content"
|