pass -c option on to all git commands run
The -c option now not only modifies the git configuration seen by git-annex, but it is passed along to every git command git-annex runs. This was easy to plumb through because gitCommandLine is already used to construct every git command line, to add --git-dir and --work-tree
This commit is contained in:
parent
2eeb54a107
commit
c2862d9585
5 changed files with 13 additions and 3 deletions
|
@ -21,7 +21,8 @@ import Git.FilePath
|
|||
|
||||
{- Constructs a git command line operating on the specified repo. -}
|
||||
gitCommandLine :: [CommandParam] -> Repo -> [CommandParam]
|
||||
gitCommandLine params Repo { location = l@(Local _ _ ) } = setdir : settree ++ params
|
||||
gitCommandLine params r@(Repo { location = l@(Local _ _ ) }) =
|
||||
setdir : settree ++ gitGlobalOpts r ++ params
|
||||
where
|
||||
setdir = Param $ "--git-dir=" ++ gitpath (gitdir l)
|
||||
settree = case worktree l of
|
||||
|
|
|
@ -230,6 +230,7 @@ newFrom l = return Repo
|
|||
, remotes = []
|
||||
, remoteName = Nothing
|
||||
, gitEnv = Nothing
|
||||
, gitGlobalOpts = []
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -10,6 +10,7 @@ module Git.Types where
|
|||
import Network.URI
|
||||
import qualified Data.Map as M
|
||||
import System.Posix.Types
|
||||
import Utility.SafeCommand
|
||||
|
||||
{- Support repositories on local disk, and repositories accessed via an URL.
|
||||
-
|
||||
|
@ -38,6 +39,8 @@ data Repo = Repo
|
|||
, remoteName :: Maybe String
|
||||
-- alternate environment to use when running git commands
|
||||
, gitEnv :: Maybe [(String, String)]
|
||||
-- global options to pass to git when running git commands
|
||||
, gitGlobalOpts :: [CommandParam]
|
||||
} deriving (Show, Eq)
|
||||
|
||||
{- A git ref. Can be a sha1, or a branch or tag name. -}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue