diff options
author | Joey Hess <joey@kitenet.net> | 2011-03-03 17:21:00 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2011-03-03 17:21:00 -0400 |
commit | 657395b628b46b378eda77d5dc6edcdde7183b38 (patch) | |
tree | 2f7bc67fbed23214568feefe0c2c1292092eb0d9 /Command | |
parent | 1de12a291891463c6d532a10c74cbda1872c8b9b (diff) |
add describe subcommand
Diffstat (limited to 'Command')
-rw-r--r-- | Command/Describe.hs | 41 | ||||
-rw-r--r-- | Command/Init.hs | 2 |
2 files changed, 42 insertions, 1 deletions
diff --git a/Command/Describe.hs b/Command/Describe.hs new file mode 100644 index 000000000..643ca0471 --- /dev/null +++ b/Command/Describe.hs @@ -0,0 +1,41 @@ +{- git-annex command + - + - Copyright 2011 Joey Hess <joey@kitenet.net> + - + - Licensed under the GNU GPL version 3 or higher. + -} + +module Command.Describe where + + +import Command +import qualified GitRepo as Git +import qualified Remotes +import UUID +import Messages +import qualified Command.Init + +command :: [Command] +command = [Command "describe" (paramPair paramRemote paramDesc) seek + "change description of a repository"] + +seek :: [CommandSeek] +seek = [withString start] + +start :: CommandStartString +start params = notBareRepo $ do + let (name, description) = + case (words params) of + (n:d) -> (n,unwords d) + _ -> error "Specify a repository and a description." + + showStart "describe" name + Remotes.readConfigs + r <- Remotes.byName name + return $ Just $ perform r description + +perform :: Git.Repo -> String -> CommandPerform +perform repo description = do + u <- getUUID repo + describeUUID u description + return $ Just $ Command.Init.cleanup diff --git a/Command/Init.hs b/Command/Init.hs index 509c9e51c..2c5fdc2fc 100644 --- a/Command/Init.hs +++ b/Command/Init.hs @@ -62,7 +62,7 @@ cleanup = do liftIO $ Git.run g "add" [File logfile] liftIO $ Git.run g "commit" [ Params "-q -m" - , Param "git annex init" + , Param "git annex repository description" , File logfile ] return True |