summaryrefslogtreecommitdiff
path: root/Annex
diff options
context:
space:
mode:
authorGravatar Joey Hess <joeyh@joeyh.name>2015-12-29 16:36:21 -0400
committerGravatar Joey Hess <joeyh@joeyh.name>2015-12-29 16:36:21 -0400
commit32919e3eb4ba3c3bc368f9f7b43d15e45d321016 (patch)
tree32519060fe891dca857bb59a862d46d2e8069ff4 /Annex
parent3c645368da1c9ee0e963fc60fe2ff9611bed92da (diff)
don't disable smudge filter while merging
The smudge filter does need to be run, because if the key is in the local annex already (due to renaming, or a copy of a file added, or a new file added and its content has already arrived), git merge smudges the file and this should provide its content. This does probably mean that in merge conflict resolution, git smudges the existing file, re-copying all its content to it, and then the file is deleted. So, not efficient.
Diffstat (limited to 'Annex')
-rw-r--r--Annex/AutoMerge.hs4
1 files changed, 1 insertions, 3 deletions
diff --git a/Annex/AutoMerge.hs b/Annex/AutoMerge.hs
index 246a4858b..57f15e07c 100644
--- a/Annex/AutoMerge.hs
+++ b/Annex/AutoMerge.hs
@@ -30,7 +30,6 @@ import Annex.VariantFile
import qualified Database.Keys
import Annex.InodeSentinal
import Utility.InodeCache
-import Command.Smudge (withSmudgeDisabled)
import qualified Data.Set as S
import qualified Data.Map as M
@@ -50,8 +49,7 @@ autoMergeFrom branch currbranch commitmode = do
where
go old = ifM isDirect
( mergeDirect currbranch old branch (resolveMerge old branch) commitmode
- -- Avoid smudge filter populating files while merging.
- , withSmudgeDisabled (Git.Merge.mergeNonInteractive branch commitmode)
+ , inRepo (Git.Merge.mergeNonInteractive branch commitmode)
<||> (resolveMerge old branch <&&> commitResolvedMerge commitmode)
)