mercurial/subrepo.py
changeset 45556 03726f5b6092
parent 45375 8c466bcb0879
child 45577 5c8230ca37f2
--- a/mercurial/subrepo.py	Fri Sep 18 15:03:06 2020 -0700
+++ b/mercurial/subrepo.py	Mon Sep 21 10:09:39 2020 -0700
@@ -25,6 +25,7 @@
     exchange,
     logcmdutil,
     match as matchmod,
+    merge as merge,
     node,
     pathutil,
     phases,
@@ -783,7 +784,10 @@
                     % (revision[0:12], self._path)
                 )
                 repo = urepo
-        hg.updaterepo(repo, revision, overwrite)
+        if overwrite:
+            merge.clean_update(repo[revision])
+        else:
+            hg.updaterepo(repo, revision, False)
 
     @annotatesubrepoerror
     def merge(self, state):