diff --git a/mercurial/merge.py b/mercurial/merge.py --- a/mercurial/merge.py +++ b/mercurial/merge.py @@ -177,10 +177,16 @@ def manifestmerge(repo, p1, p2, pa, over Merge manifest m1 with m2 using ancestor ma and generate merge action list """ + repo.ui.note(_("resolving manifests\n")) + repo.ui.debug(_(" overwrite %s partial %s\n") % (overwrite, bool(partial))) + repo.ui.debug(_(" ancestor %s local %s remote %s\n") % (pa, p1, p2)) + m1 = p1.manifest() m2 = p2.manifest() ma = pa.manifest() backwards = (pa == p2) + action = [] + copy = {} def fmerge(f, f2=None, fa=None): """merge executable flags""" @@ -190,13 +196,10 @@ def manifestmerge(repo, p1, p2, pa, over a, b, c = ma.execf(fa), m1.execf(f), m2.execf(f2) return ((a^b) | (a^c)) ^ a - action = [] - def act(msg, m, f, *args): repo.ui.debug(" %s: %s -> %s\n" % (f, msg, m)) action.append((f, m) + args) - copy = {} if not (backwards or overwrite): copy = findcopies(repo, m1, m2, pa.rev()) @@ -355,70 +358,47 @@ def recordupdates(repo, action, branchme def update(repo, node, branchmerge=False, force=False, partial=None, wlock=None, show_stats=True, remind=True): - overwrite = force and not branchmerge - forcemerge = force and branchmerge - if not wlock: wlock = repo.wlock() - ### check phase - + overwrite = force and not branchmerge + forcemerge = force and branchmerge wc = repo.workingctx() pl = wc.parents() + p1, p2 = pl[0], repo.changectx(node) + pa = p1.ancestor(p2) + fp1, fp2, xp1, xp2 = p1.node(), p2.node(), str(p1), str(p2) + + ### check phase if not overwrite and len(pl) > 1: raise util.Abort(_("outstanding uncommitted merges")) - - p1, p2 = pl[0], repo.changectx(node) - pa = p1.ancestor(p2) - - # is there a linear path from p1 to p2? - if pa == p1 or pa == p2: + if pa == p1 or pa == p2: # is there a linear path from p1 to p2? if branchmerge: raise util.Abort(_("there is nothing to merge, just use " "'hg update' or look at 'hg heads'")) elif not (overwrite or branchmerge): raise util.Abort(_("update spans branches, use 'hg merge' " "or 'hg update -C' to lose changes")) - if branchmerge and not forcemerge: if wc.modified() or wc.added() or wc.removed(): raise util.Abort(_("outstanding uncommitted changes")) - # resolve the manifest to determine which files - # we care about merging - repo.ui.note(_("resolving manifests\n")) - repo.ui.debug(_(" overwrite %s branchmerge %s partial %s\n") % - (overwrite, branchmerge, bool(partial))) - repo.ui.debug(_(" ancestor %s local %s remote %s\n") % (p1, p2, pa)) - + ### calculate phase action = [] - if not force: checkunknown(wc, p2) if not branchmerge: action += forgetremoved(wc, p2) - action += manifestmerge(repo, wc, p2, pa, overwrite, partial) ### apply phase - - if not branchmerge: - # just jump to the new rev - fp1, fp2, xp1, xp2 = p2.node(), nullid, str(p2), '' - else: - fp1, fp2, xp1, xp2 = p1.node(), p2.node(), str(p1), str(p2) - + if not branchmerge: # just jump to the new rev + fp1, fp2, xp1, xp2 = fp2, nullid, xp2, '' if not partial: repo.hook('preupdate', throw=True, parent1=xp1, parent2=xp2) updated, merged, removed, unresolved = applyupdates(repo, action, wc, p2) - # update dirstate - if not partial: - recordupdates(repo, action, branchmerge, p2) - repo.dirstate.setparents(fp1, fp2) - repo.hook('update', parent1=xp1, parent2=xp2, error=unresolved) - if show_stats: stats = ((updated, _("updated")), (merged - unresolved, _("merged")), @@ -427,6 +407,10 @@ def update(repo, node, branchmerge=False note = ", ".join([_("%d files %s") % s for s in stats]) repo.ui.status("%s\n" % note) if not partial: + recordupdates(repo, action, branchmerge, p2) + repo.dirstate.setparents(fp1, fp2) + repo.hook('update', parent1=xp1, parent2=xp2, error=unresolved) + if branchmerge: if unresolved: repo.ui.status(_("There are unresolved merges," diff --git a/tests/test-merge7.out b/tests/test-merge7.out --- a/tests/test-merge7.out +++ b/tests/test-merge7.out @@ -22,11 +22,11 @@ added 1 changesets with 1 changes to 1 f (run 'hg heads' to see heads, 'hg merge' to merge) merge: warning: conflicts during merge resolving manifests - overwrite None branchmerge True partial False - ancestor 451c744aabcc local a070d41e8360 remote faaea63e63a9 + overwrite None partial False + ancestor faaea63e63a9 local 451c744aabcc+ remote a070d41e8360 test.txt: versions differ -> m merging test.txt -my test.txt@. other test.txt@a070d41e8360 ancestor test.txt@faaea63e63a9 +my test.txt@451c744aabcc+ other test.txt@a070d41e8360 ancestor test.txt@faaea63e63a9 merging test.txt failed! 0 files updated, 0 files merged, 0 files removed, 1 files unresolved There are unresolved merges, you can redo the full merge using: diff --git a/tests/test-rename-merge1.out b/tests/test-rename-merge1.out --- a/tests/test-rename-merge1.out +++ b/tests/test-rename-merge1.out @@ -2,12 +2,12 @@ checkout 2 files updated, 0 files merged, 2 files removed, 0 files unresolved merge resolving manifests - overwrite None branchmerge True partial False - ancestor f26ec4fc3fa3 local 8e765a822af2 remote af1939970a1c + overwrite None partial False + ancestor af1939970a1c local f26ec4fc3fa3+ remote 8e765a822af2 a: remote moved -> m b2: remote created -> g merging a and b -my a@. other b@8e765a822af2 ancestor a@af1939970a1c +my a@f26ec4fc3fa3+ other b@8e765a822af2 ancestor a@af1939970a1c copying a to b removing a getting b2 diff --git a/tests/test-rename-merge2.out b/tests/test-rename-merge2.out --- a/tests/test-rename-merge2.out +++ b/tests/test-rename-merge2.out @@ -2,15 +2,15 @@ test L:up a R:nc a b W: - 1 get local a to b -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor e300d1c794ec local 735846fee2d7 remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local e300d1c794ec+ remote 735846fee2d7 rev: versions differ -> m a: remote copied -> m merging a and b -my a@. other b@735846fee2d7 ancestor a@924404dff337 +my a@e300d1c794ec+ other b@735846fee2d7 ancestor a@924404dff337 copying a to b merging rev -my rev@. other rev@735846fee2d7 ancestor rev@924404dff337 +my rev@e300d1c794ec+ other rev@735846fee2d7 ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -23,16 +23,16 @@ M b test L:nc a b R:up a W: - 2 get rem change to a and b -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor ac809aeed39a local f4db7e329e71 remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local ac809aeed39a+ remote f4db7e329e71 a: remote is newer -> g b: local copied -> m rev: versions differ -> m getting a merging b and a -my b@. other a@f4db7e329e71 ancestor a@924404dff337 +my b@ac809aeed39a+ other a@f4db7e329e71 ancestor a@924404dff337 merging rev -my rev@. other rev@f4db7e329e71 ancestor rev@924404dff337 +my rev@ac809aeed39a+ other rev@f4db7e329e71 ancestor rev@924404dff337 1 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -45,16 +45,16 @@ M b test L:up a R:nm a b W: - 3 get local a change to b, remove a -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor e300d1c794ec local e03727d2d66b remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local e300d1c794ec+ remote e03727d2d66b a: remote moved -> m rev: versions differ -> m merging a and b -my a@. other b@e03727d2d66b ancestor a@924404dff337 +my a@e300d1c794ec+ other b@e03727d2d66b ancestor a@924404dff337 copying a to b removing a merging rev -my rev@. other rev@e03727d2d66b ancestor rev@924404dff337 +my rev@e300d1c794ec+ other rev@e03727d2d66b ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -66,14 +66,14 @@ M b test L:nm a b R:up a W: - 4 get remote change to b -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor ecf3cb2a4219 local f4db7e329e71 remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local ecf3cb2a4219+ remote f4db7e329e71 b: local moved -> m rev: versions differ -> m merging b and a -my b@. other a@f4db7e329e71 ancestor a@924404dff337 +my b@ecf3cb2a4219+ other a@f4db7e329e71 ancestor a@924404dff337 merging rev -my rev@. other rev@f4db7e329e71 ancestor rev@924404dff337 +my rev@ecf3cb2a4219+ other rev@f4db7e329e71 ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -85,13 +85,13 @@ M b test L: R:nc a b W: - 5 get b -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor 94b33a1b7f2d local 735846fee2d7 remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local 94b33a1b7f2d+ remote 735846fee2d7 rev: versions differ -> m a: remote copied -> m copying a to b merging rev -my rev@. other rev@735846fee2d7 ancestor rev@924404dff337 +my rev@94b33a1b7f2d+ other rev@735846fee2d7 ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -104,12 +104,12 @@ C a test L:nc a b R: W: - 6 nothing -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor ac809aeed39a local 97c705ade336 remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local ac809aeed39a+ remote 97c705ade336 b: local copied -> m rev: versions differ -> m merging rev -my rev@. other rev@97c705ade336 ancestor rev@924404dff337 +my rev@ac809aeed39a+ other rev@97c705ade336 ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -122,14 +122,14 @@ C a test L: R:nm a b W: - 7 get b -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor 94b33a1b7f2d local e03727d2d66b remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local 94b33a1b7f2d+ remote e03727d2d66b a: remote moved -> m rev: versions differ -> m copying a to b removing a merging rev -my rev@. other rev@e03727d2d66b ancestor rev@924404dff337 +my rev@94b33a1b7f2d+ other rev@e03727d2d66b ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -141,12 +141,12 @@ M b test L:nm a b R: W: - 8 nothing -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor ecf3cb2a4219 local 97c705ade336 remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local ecf3cb2a4219+ remote 97c705ade336 b: local moved -> m rev: versions differ -> m merging rev -my rev@. other rev@97c705ade336 ancestor rev@924404dff337 +my rev@ecf3cb2a4219+ other rev@97c705ade336 ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -158,14 +158,14 @@ M b test L:um a b R:um a b W: - 9 do merge with ancestor in a -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor ec03c2ca8642 local 79cc6877a3b7 remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local ec03c2ca8642+ remote 79cc6877a3b7 b: versions differ -> m rev: versions differ -> m merging b -my b@. other b@79cc6877a3b7 ancestor a@924404dff337 +my b@ec03c2ca8642+ other b@79cc6877a3b7 ancestor a@924404dff337 merging rev -my rev@. other rev@79cc6877a3b7 ancestor rev@924404dff337 +my rev@ec03c2ca8642+ other rev@79cc6877a3b7 ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -176,13 +176,13 @@ M b test L:nm a b R:nm a c W: - 11 get c, keep b -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor ecf3cb2a4219 local e6abcc1a30c2 remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local ecf3cb2a4219+ remote e6abcc1a30c2 rev: versions differ -> m c: remote created -> g getting c merging rev -my rev@. other rev@e6abcc1a30c2 ancestor rev@924404dff337 +my rev@ecf3cb2a4219+ other rev@e6abcc1a30c2 ancestor rev@924404dff337 1 files updated, 1 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -194,14 +194,14 @@ C b test L:nc a b R:up b W: - 12 merge b no ancestor -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor ac809aeed39a local af30c7647fc7 remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local ac809aeed39a+ remote af30c7647fc7 b: versions differ -> m rev: versions differ -> m merging b -my b@. other b@af30c7647fc7 ancestor b@000000000000 +my b@ac809aeed39a+ other b@af30c7647fc7 ancestor b@000000000000 merging rev -my rev@. other rev@af30c7647fc7 ancestor rev@924404dff337 +my rev@ac809aeed39a+ other rev@af30c7647fc7 ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -213,16 +213,16 @@ C a test L:up b R:nm a b W: - 13 merge b no ancestor -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor 59318016310c local e03727d2d66b remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local 59318016310c+ remote e03727d2d66b a: other deleted -> r b: versions differ -> m rev: versions differ -> m removing a merging b -my b@. other b@e03727d2d66b ancestor b@000000000000 +my b@59318016310c+ other b@e03727d2d66b ancestor b@000000000000 merging rev -my rev@. other rev@e03727d2d66b ancestor rev@924404dff337 +my rev@59318016310c+ other rev@e03727d2d66b ancestor rev@924404dff337 0 files updated, 2 files merged, 1 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -233,16 +233,16 @@ M b test L:nc a b R:up a b W: - 14 merge b no ancestor -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor ac809aeed39a local 8dbce441892a remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local ac809aeed39a+ remote 8dbce441892a a: remote is newer -> g b: versions differ -> m rev: versions differ -> m getting a merging b -my b@. other b@8dbce441892a ancestor b@000000000000 +my b@ac809aeed39a+ other b@8dbce441892a ancestor b@000000000000 merging rev -my rev@. other rev@8dbce441892a ancestor rev@924404dff337 +my rev@ac809aeed39a+ other rev@8dbce441892a ancestor rev@924404dff337 1 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -254,16 +254,16 @@ M b test L:up b R:nm a b W: - 15 merge b no ancestor, remove a -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor 59318016310c local e03727d2d66b remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local 59318016310c+ remote e03727d2d66b a: other deleted -> r b: versions differ -> m rev: versions differ -> m removing a merging b -my b@. other b@e03727d2d66b ancestor b@000000000000 +my b@59318016310c+ other b@e03727d2d66b ancestor b@000000000000 merging rev -my rev@. other rev@e03727d2d66b ancestor rev@924404dff337 +my rev@59318016310c+ other rev@e03727d2d66b ancestor rev@924404dff337 0 files updated, 2 files merged, 1 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -274,16 +274,16 @@ M b test L:nc a b R:up a b W: - 16 get a, merge b no ancestor -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor ac809aeed39a local 8dbce441892a remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local ac809aeed39a+ remote 8dbce441892a a: remote is newer -> g b: versions differ -> m rev: versions differ -> m getting a merging b -my b@. other b@8dbce441892a ancestor b@000000000000 +my b@ac809aeed39a+ other b@8dbce441892a ancestor b@000000000000 merging rev -my rev@. other rev@8dbce441892a ancestor rev@924404dff337 +my rev@ac809aeed39a+ other rev@8dbce441892a ancestor rev@924404dff337 1 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -295,14 +295,14 @@ M b test L:up a b R:nc a b W: - 17 keep a, merge b no ancestor -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor 0b76e65c8289 local 735846fee2d7 remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local 0b76e65c8289+ remote 735846fee2d7 b: versions differ -> m rev: versions differ -> m merging b -my b@. other b@735846fee2d7 ancestor b@000000000000 +my b@0b76e65c8289+ other b@735846fee2d7 ancestor b@000000000000 merging rev -my rev@. other rev@735846fee2d7 ancestor rev@924404dff337 +my rev@0b76e65c8289+ other rev@735846fee2d7 ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -314,16 +314,16 @@ C a test L:nm a b R:up a b W: - 18 merge b no ancestor -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor ecf3cb2a4219 local 8dbce441892a remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local ecf3cb2a4219+ remote 8dbce441892a b: versions differ -> m rev: versions differ -> m a: prompt recreating -> g getting a merging b -my b@. other b@8dbce441892a ancestor b@000000000000 +my b@ecf3cb2a4219+ other b@8dbce441892a ancestor b@000000000000 merging rev -my rev@. other rev@8dbce441892a ancestor rev@924404dff337 +my rev@ecf3cb2a4219+ other rev@8dbce441892a ancestor rev@924404dff337 1 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -335,14 +335,14 @@ M b test L:up a b R:nm a b W: - 19 merge b no ancestor, prompt remove a -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor 0b76e65c8289 local e03727d2d66b remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local 0b76e65c8289+ remote e03727d2d66b b: versions differ -> m rev: versions differ -> m merging b -my b@. other b@e03727d2d66b ancestor b@000000000000 +my b@0b76e65c8289+ other b@e03727d2d66b ancestor b@000000000000 merging rev -my rev@. other rev@e03727d2d66b ancestor rev@924404dff337 +my rev@0b76e65c8289+ other rev@e03727d2d66b ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -354,16 +354,16 @@ C a test L:up a R:um a b W: - 20 merge a and b to b, remove a -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor e300d1c794ec local 79cc6877a3b7 remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local e300d1c794ec+ remote 79cc6877a3b7 a: remote moved -> m rev: versions differ -> m merging a and b -my a@. other b@79cc6877a3b7 ancestor a@924404dff337 +my a@e300d1c794ec+ other b@79cc6877a3b7 ancestor a@924404dff337 copying a to b removing a merging rev -my rev@. other rev@79cc6877a3b7 ancestor rev@924404dff337 +my rev@e300d1c794ec+ other rev@79cc6877a3b7 ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -375,14 +375,14 @@ M b test L:um a b R:up a W: - 21 merge a and b to b -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor ec03c2ca8642 local f4db7e329e71 remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local ec03c2ca8642+ remote f4db7e329e71 b: local moved -> m rev: versions differ -> m merging b and a -my b@. other a@f4db7e329e71 ancestor a@924404dff337 +my b@ec03c2ca8642+ other a@f4db7e329e71 ancestor a@924404dff337 merging rev -my rev@. other rev@f4db7e329e71 ancestor rev@924404dff337 +my rev@ec03c2ca8642+ other rev@f4db7e329e71 ancestor rev@924404dff337 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- @@ -394,16 +394,16 @@ M b test L:nm a b R:up a c W: - 23 get c, keep b -------------- resolving manifests - overwrite None branchmerge True partial False - ancestor ecf3cb2a4219 local 2b958612230f remote 924404dff337 + overwrite None partial False + ancestor 924404dff337 local ecf3cb2a4219+ remote 2b958612230f b: local moved -> m rev: versions differ -> m c: remote created -> g merging b and a -my b@. other a@2b958612230f ancestor a@924404dff337 +my b@ecf3cb2a4219+ other a@2b958612230f ancestor a@924404dff337 getting c merging rev -my rev@. other rev@2b958612230f ancestor rev@924404dff337 +my rev@ecf3cb2a4219+ other rev@2b958612230f ancestor rev@924404dff337 1 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) -------------- diff --git a/tests/test-up-local-change.out b/tests/test-up-local-change.out --- a/tests/test-up-local-change.out +++ b/tests/test-up-local-change.out @@ -15,12 +15,12 @@ date: Mon Jan 12 13:46:40 1970 +0 summary: 1 resolving manifests - overwrite False branchmerge False partial False - ancestor 33aaa84a386b local 802f095af299 remote 33aaa84a386b + overwrite False partial False + ancestor 33aaa84a386b local 33aaa84a386b+ remote 802f095af299 a: versions differ -> m b: remote created -> g merging a -my a@. other a@802f095af299 ancestor a@33aaa84a386b +my a@33aaa84a386b+ other a@802f095af299 ancestor a@33aaa84a386b getting b 1 files updated, 1 files merged, 0 files removed, 0 files unresolved changeset: 1:802f095af299 @@ -30,8 +30,8 @@ date: Mon Jan 12 13:46:40 1970 +0 summary: 2 resolving manifests - overwrite False branchmerge False partial False - ancestor 802f095af299 local 33aaa84a386b remote 33aaa84a386b + overwrite False partial False + ancestor 33aaa84a386b local 802f095af299+ remote 33aaa84a386b b: remote deleted -> r removing b 0 files updated, 0 files merged, 1 files removed, 0 files unresolved @@ -48,12 +48,12 @@ date: Mon Jan 12 13:46:40 1970 +0 summary: 1 resolving manifests - overwrite False branchmerge False partial False - ancestor 33aaa84a386b local 802f095af299 remote 33aaa84a386b + overwrite False partial False + ancestor 33aaa84a386b local 33aaa84a386b+ remote 802f095af299 a: versions differ -> m b: remote created -> g merging a -my a@. other a@802f095af299 ancestor a@33aaa84a386b +my a@33aaa84a386b+ other a@802f095af299 ancestor a@33aaa84a386b getting b 1 files updated, 1 files merged, 0 files removed, 0 files unresolved changeset: 1:802f095af299 @@ -98,14 +98,14 @@ failed abort: outstanding uncommitted changes failed resolving manifests - overwrite False branchmerge True partial False - ancestor 802f095af299 local 030602aee63d remote 33aaa84a386b + overwrite False partial False + ancestor 33aaa84a386b local 802f095af299+ remote 030602aee63d a: versions differ -> m b: versions differ -> m merging a -my a@. other a@030602aee63d ancestor a@33aaa84a386b +my a@802f095af299+ other a@030602aee63d ancestor a@33aaa84a386b merging b -my b@. other b@030602aee63d ancestor b@000000000000 +my b@802f095af299+ other b@030602aee63d ancestor b@000000000000 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) changeset: 1:802f095af299 diff --git a/tests/test-update-reverse.out b/tests/test-update-reverse.out --- a/tests/test-update-reverse.out +++ b/tests/test-update-reverse.out @@ -40,8 +40,8 @@ a side1 side2 resolving manifests - overwrite True branchmerge False partial False - ancestor ded32b0db104 local 221226fb2bd8 remote 537353581d3d + overwrite True partial False + ancestor 537353581d3d local ded32b0db104+ remote 221226fb2bd8 side2: remote deleted -> r side1: remote deleted -> r main: remote created -> g