##// END OF EJS Templates
merge: handle acceptremove of create+delete early in manifest merge
Mads Kiilerich -
r20639:1df03364 default
parent child Browse files
Show More
@@ -423,6 +423,9 b' def manifestmerge(repo, wctx, p2, pa, br'
423 423 "local copied/moved to " + f2))
424 424 elif n1 and f in ma: # clean, a different, no remote
425 425 if n1 != ma[f]:
426 if acceptremote:
427 actions.append((f, "r", None, "remote delete"))
428 else:
426 429 prompts.append((f, "cd")) # prompt changed/deleted
427 430 elif n1[20:] == "a": # added, no remote
428 431 actions.append((f, "f", None, "remote deleted"))
@@ -470,6 +473,10 b' def manifestmerge(repo, wctx, p2, pa, br'
470 473 aborts.append((f, "ud"))
471 474 else:
472 475 # if different: old untracked f may be overwritten and lost
476 if acceptremote:
477 actions.append((f, "g", (m2.flags(f),),
478 "remote recreating"))
479 else:
473 480 prompts.append((f, "dc")) # prompt deleted/changed
474 481
475 482 for f, m in sorted(aborts):
@@ -490,9 +497,7 b' def manifestmerge(repo, wctx, p2, pa, br'
490 497
491 498 for f, m in sorted(prompts):
492 499 if m == "cd":
493 if acceptremote:
494 actions.append((f, "r", None, "remote delete"))
495 elif repo.ui.promptchoice(
500 if repo.ui.promptchoice(
496 501 _("local changed %s which remote deleted\n"
497 502 "use (c)hanged version or (d)elete?"
498 503 "$$ &Changed $$ &Delete") % f, 0):
@@ -500,9 +505,7 b' def manifestmerge(repo, wctx, p2, pa, br'
500 505 else:
501 506 actions.append((f, "a", None, "prompt keep"))
502 507 elif m == "dc":
503 if acceptremote:
504 actions.append((f, "g", (m2.flags(f),), "remote recreating"))
505 elif repo.ui.promptchoice(
508 if repo.ui.promptchoice(
506 509 _("remote changed %s which local deleted\n"
507 510 "use (c)hanged version or leave (d)eleted?"
508 511 "$$ &Changed $$ &Deleted") % f, 0) == 0:
General Comments 0
You need to be logged in to leave comments. Login now