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