diff options
author | Joey Hess <joey@kitenet.net> | 2013-03-03 13:39:07 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2013-03-03 13:39:07 -0400 |
commit | 9bce151df7b073c5f2507ea15ca2237814ae9248 (patch) | |
tree | 653751d0c0f70475fc1bd7e89d0465fa76b8c630 /Command/Sync.hs | |
parent | e4fc1c290dba197a16c0e1cc0ff07ecfe2ee542b (diff) |
git subcommand cleanup
Pass subcommand as a regular param, which allows passing git parameters
like -c before it. This was already done in the pipeing set of functions,
but not the command running set.
Diffstat (limited to 'Command/Sync.hs')
-rw-r--r-- | Command/Sync.hs | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/Command/Sync.hs b/Command/Sync.hs index cd0398ffa..39eda90f7 100644 --- a/Command/Sync.hs +++ b/Command/Sync.hs @@ -91,7 +91,7 @@ commit = next $ next $ do showOutput Annex.Branch.commit "update" -- Commit will fail when the tree is clean, so ignore failure. - _ <- inRepo $ Git.Command.runBool "commit" $ ps ++ + _ <- inRepo $ Git.Command.runBool $ (Param "commit") : ps ++ [Param "-m", Param "git-annex automatic sync"] return True @@ -117,8 +117,9 @@ updateBranch :: Git.Ref -> Git.Repo -> IO () updateBranch syncbranch g = unlessM go $ error $ "failed to update " ++ show syncbranch where - go = Git.Command.runBool "branch" - [ Param "-f" + go = Git.Command.runBool + [ Param "branch" + , Param "-f" , Param $ show $ Git.Ref.base syncbranch ] g @@ -130,8 +131,8 @@ pullRemote remote branch = do stopUnless fetch $ next $ mergeRemote remote (Just branch) where - fetch = inRepo $ Git.Command.runBool "fetch" - [Param $ Remote.name remote] + fetch = inRepo $ Git.Command.runBool + [Param "fetch", Param $ Remote.name remote] {- The remote probably has both a master and a synced/master branch. - Which to merge from? Well, the master has whatever latest changes @@ -162,8 +163,9 @@ pushRemote remote branch = go =<< needpush pushBranch :: Remote -> Git.Ref -> Git.Repo -> IO Bool pushBranch remote branch g = - Git.Command.runBool "push" - [ Param $ Remote.name remote + Git.Command.runBool + [ Param "push" + , Param $ Remote.name remote , Param $ refspec Annex.Branch.name , Param $ refspec branch ] g @@ -233,8 +235,11 @@ resolveMerge = do when merged $ do Annex.Queue.flush - void $ inRepo $ Git.Command.runBool "commit" - [Param "-m", Param "git-annex automatic merge conflict fix"] + void $ inRepo $ Git.Command.runBool + [ Param "commit" + , Param "-m" + , Param "git-annex automatic merge conflict fix" + ] return merged resolveMerge' :: LsFiles.Unmerged -> Annex Bool |