mercurial/localrepo.py
changeset 1234 9ee8428d84a1
parent 1233 5381b0d88e9e
child 1236 67a28636ea64
--- a/mercurial/localrepo.py
+++ b/mercurial/localrepo.py
@@ -1108,10 +1108,12 @@ class localrepository:
                     self.ui.debug("other deleted %s\n" % f)
                     remove.append(f) # other deleted it
             else:
-                # file is not in ancestor or target
-                if n == m1.get(f, nullid) or force: # same as parent
-                    self.ui.debug("remote deleted %s\n" % f)
-                    remove.append(f)
+                if n == m1.get(f, nullid): # same as parent
+                    if p2 == pa: # going backwards?
+                        self.ui.debug("remote deleted %s\n" % f)
+                        remove.append(f)
+                    else:
+                        self.ui.debug("local created %s, keeping\n" % f)
                 else:
                     self.ui.debug("working dir created %s, keeping\n" % f)