summaryrefslogtreecommitdiff
path: root/Annex
diff options
context:
space:
mode:
authorGravatar Joey Hess <joeyh@joeyh.name>2016-06-07 12:53:35 -0400
committerGravatar Joey Hess <joeyh@joeyh.name>2016-06-07 12:53:35 -0400
commite4993c590109f52291a7ce9790e4dd1893d9e368 (patch)
treef8185357bd786a4e9c6674f5f71f9ea16f44e856 /Annex
parentdb0d798180cb076b9b549bc07344cab70cda5ec0 (diff)
Fix bad automatic merge conflict resolution between an annexed file and a directory with the same name when in an adjusted branch.
When running in an overlay work tree, all unchanged files show as deleted, so this code that stages deletions should not run.
Diffstat (limited to 'Annex')
-rw-r--r--Annex/AutoMerge.hs2
1 files changed, 1 insertions, 1 deletions
diff --git a/Annex/AutoMerge.hs b/Annex/AutoMerge.hs
index 06efdb7f5..7f982e515 100644
--- a/Annex/AutoMerge.hs
+++ b/Annex/AutoMerge.hs
@@ -121,7 +121,7 @@ resolveMerge us them inoverlay = do
let merged = not (null mergedfs')
void $ liftIO cleanup
- unlessM isDirect $ do
+ unlessM (pure inoverlay <||> isDirect) $ do
(deleted, cleanup2) <- inRepo (LsFiles.deleted [top])
unless (null deleted) $
Annex.Queue.addCommand "rm"