comparison mercurial/merge.py @ 16094:0776a6cababe

merge: don't use unknown() This removes use of unknown files for building the synthetic working directory manifest used by manifestmerge. Instead, we adopt the strategy used by _checkunknown. Side-effect: unknown files are no longer moved by remote directory renames, and now are left alone like ignored files.
author Matt Mackall <mpm@selenic.com>
date Thu, 09 Feb 2012 17:04:17 -0600
parents 7e30f5f2285f
children 3eab42088be4
comparison
equal deleted inserted replaced
16093:7e30f5f2285f 16094:0776a6cababe
243 act("prompt delete", "r", f) 243 act("prompt delete", "r", f)
244 else: 244 else:
245 act("prompt keep", "a", f) 245 act("prompt keep", "a", f)
246 elif n[20:] == "a": # added, no remote 246 elif n[20:] == "a": # added, no remote
247 act("remote deleted", "f", f) 247 act("remote deleted", "f", f)
248 elif n[20:] != "u": 248 else:
249 act("other deleted", "r", f) 249 act("other deleted", "r", f)
250 250
251 for f, n in m2.iteritems(): 251 for f, n in m2.iteritems():
252 if partial and not partial(f): 252 if partial and not partial(f):
253 continue 253 continue
263 f2, f, f, fmerge(f2, f, f2), False) 263 f2, f, f, fmerge(f2, f, f2), False)
264 else: # case 3,20 A/B/A 264 else: # case 3,20 A/B/A
265 act("remote moved to " + f, "m", 265 act("remote moved to " + f, "m",
266 f2, f, f, fmerge(f2, f, f2), True) 266 f2, f, f, fmerge(f2, f, f2), True)
267 elif f not in ma: 267 elif f not in ma:
268 act("remote created", "g", f, m2.flags(f)) 268 if (not overwrite
269 and _checkunknownfile(repo, p1, p2, f)):
270 rflags = fmerge(f, f, f)
271 act("remote differs from untracked local",
272 "m", f, f, f, rflags, False)
273 else:
274 act("remote created", "g", f, m2.flags(f))
269 elif n != ma[f]: 275 elif n != ma[f]:
270 if repo.ui.promptchoice( 276 if repo.ui.promptchoice(
271 _("remote changed %s which local deleted\n" 277 _("remote changed %s which local deleted\n"
272 "use (c)hanged version or leave (d)eleted?") % f, 278 "use (c)hanged version or leave (d)eleted?") % f,
273 (_("&Changed"), _("&Deleted")), 0) == 0: 279 (_("&Changed"), _("&Deleted")), 0) == 0:
557 # Allow jumping branches if clean and specific rev given 563 # Allow jumping branches if clean and specific rev given
558 pa = p1 564 pa = p1
559 565
560 ### calculate phase 566 ### calculate phase
561 action = [] 567 action = []
562 wc.status(unknown=True) # prime cache
563 folding = not util.checkcase(repo.path) 568 folding = not util.checkcase(repo.path)
564 if not force: 569 if not force:
565 _checkunknown(repo, wc, p2) 570 _checkunknown(repo, wc, p2)
566 if folding: 571 if folding:
567 _checkcollision(p2, branchmerge and p1) 572 _checkcollision(p2, branchmerge and p1)