summaryrefslogtreecommitdiff
path: root/Annex/Direct/Fixup.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Annex/Direct/Fixup.hs')
-rw-r--r--Annex/Direct/Fixup.hs5
1 files changed, 3 insertions, 2 deletions
diff --git a/Annex/Direct/Fixup.hs b/Annex/Direct/Fixup.hs
index 13485242a..73cefb134 100644
--- a/Annex/Direct/Fixup.hs
+++ b/Annex/Direct/Fixup.hs
@@ -10,16 +10,17 @@ module Annex.Direct.Fixup where
import Git.Types
import Git.Config
import qualified Git.Construct as Construct
-import Utility.Path
import Utility.SafeCommand
+import System.FilePath
+
{- Direct mode repos have core.bare=true, but are not really bare.
- Fix up the Repo to be a non-bare repo, and arrange for git commands
- run by git-annex to be passed parameters that override this setting. -}
fixupDirect :: Repo -> IO Repo
fixupDirect r@(Repo { location = l@(Local { gitdir = d, worktree = Nothing }) }) = do
let r' = r
- { location = l { worktree = Just (parentDir d) }
+ { location = l { worktree = Just (takeDirectory d) }
, gitGlobalOpts = gitGlobalOpts r ++
[ Param "-c"
, Param $ coreBare ++ "=" ++ boolConfig False