Mercurial > evolve
changeset 3749:44542ac10170
branching: merge with branch for stable
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Mon, 21 May 2018 16:56:52 +0200 |
parents | 8fe8152ff071 (diff) 9fa3585b160f (current diff) |
children | 85ad555d6ff7 |
files | |
diffstat | 14 files changed, 219 insertions(+), 101 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext3rd/evolve/evolvecmd.py Sat May 19 18:26:36 2018 +0530 +++ b/hgext3rd/evolve/evolvecmd.py Mon May 21 16:56:52 2018 +0200 @@ -338,7 +338,10 @@ """ repo = repo.unfiltered() divergent = repo[divergent.rev()] + evolvestate['divergent'] = divergent.node() base, others = divergentdata(divergent) + + # we don't handle split in content-divergence yet if len(others) > 1: othersstr = "[%s]" % (','.join([str(i) for i in others])) msg = _("skipping %d:%s with a changeset that got split" @@ -355,6 +358,9 @@ ui.write_err(msg) return (False, '') other = others[0] + evolvestate['other-divergent'] = other.node() + + # we don't handle merge content-divergent changesets yet if len(other.parents()) > 1: msg = _("skipping %s: %s changeset can't be " "a merge (yet)\n") % (divergent, TROUBLES['CONTENTDIVERGENT']) @@ -364,6 +370,8 @@ "| `hg prune` to kill older version.\n") ui.write_err(hint) return (False, '') + + # we don't handle content-divergent changesets with different parents yet if other.p1() not in divergent.parents(): msg = _("skipping %s: have a different parent than %s " "(not handled yet)\n") % (divergent, other) @@ -400,9 +408,12 @@ % divergent)) return (False, '') if divergent not in repo[None].parents(): - repo.ui.status(_('updating to "local" conflict\n')) - hg.update(repo, divergent.rev()) - repo.ui.note(_('merging %s changeset\n') % TROUBLES['CONTENTDIVERGENT']) + repo.ui.status(_("updating to \"local\" side of the conflict: %s\n") % + divergent.hex()[:12]) + hg.updaterepo(repo, divergent.node(), False) + # merging the two content-divergent changesets + repo.ui.status(_("merging \"other\" %s changeset '%s'\n") % + (TROUBLES['CONTENTDIVERGENT'], other.hex()[:12])) if progresscb: progresscb() stats = merge.update(repo, @@ -412,18 +423,21 @@ ancestor=base.node(), mergeancestor=True) hg._showstats(repo, stats) + + # conflicts while merging content-divergent changesets if compat.hasconflict(stats): - repo.ui.status(_("use 'hg resolve' to retry unresolved file merges " - "or 'hg update -C .' to abort\n")) - raise error.Abort('merge conflict between several amendments ' - '(this is not automated yet)', - hint="""/!\ You can try: -/!\ * manual merge + resolve => new cset X -/!\ * hg up to the parent of the amended changeset (which are named W and Z) -/!\ * hg revert --all -r X -/!\ * hg ci -m "same message as the amended changeset" => new cset Y -/!\ * hg prune -n Y W Z -""") + evolvestate.save() + raise error.Abort(_("fix conflicts and run 'hg evolve --continue' or" + " use 'hg update -C .' to abort")) + + return _completecontentdivergent(ui, repo, progresscb, divergent, other, + evolvestate) + +def _completecontentdivergent(ui, repo, progresscb, divergent, other, + evolvestate): + """completes the content-divergence resolution""" + # no conflicts were there in merging content divergent changesets, let's + # resume resolution if progresscb: progresscb() emtpycommitallowed = repo.ui.backupconfig('ui', 'allowemptycommit') @@ -434,12 +448,20 @@ with repo.dirstate.parentchange(): repo.dirstate.setparents(divergent.node(), node.nullid) oldlen = len(repo) + # temporary hack because we can't use cmdrewrite.amend() during an + # interrupted evolve + evolvestate.delete() + + # XXX: we should not use amend here, rather create a new commit cmdrewrite.amend(ui, repo, message='', logfile='') + # XXX: we can get rid of this len() call also by creating a new commit if oldlen == len(repo): new = divergent # no changes else: new = repo['.'] + + # creating markers and moving phases post-resolution obsolete.createmarkers(repo, [(other, (new,))], operation='evolve') phases.retractboundary(repo, tr, other.phase(), [new.node()]) return (True, new.node()) @@ -1349,6 +1371,18 @@ _completeorphan(ui, repo, evolvestate) elif evolvestate['category'] == 'phasedivergent': _completephasedivergent(ui, repo, evolvestate) + elif evolvestate['category'] == 'contentdivergent': + tr = None + try: + tr = repo.transaction('evolve') + repo = repo.unfiltered() + _completecontentdivergent(ui, repo, progresscb, + repo[evolvestate['divergent']], + repo[evolvestate['other-divergent']], + evolvestate) + tr.close() + finally: + tr.release() else: repo.ui.status(_("continuing interrupted '%s' resolution is not yet" " supported\n") % evolvestate['category'])
--- a/hgext3rd/evolve/metadata.py Sat May 19 18:26:36 2018 +0530 +++ b/hgext3rd/evolve/metadata.py Mon May 21 16:56:52 2018 +0200 @@ -5,7 +5,7 @@ # This software may be used and distributed according to the terms of the # GNU General Public License version 2 or any later version. -__version__ = '8.0.1.dev' +__version__ = '8.1.0.dev' testedwith = '4.3.2 4.4.2 4.5.2 4.6' minimumhgversion = '4.3' buglink = 'https://bz.mercurial-scm.org/'
--- a/hgext3rd/evolve/obshistory.py Sat May 19 18:26:36 2018 +0530 +++ b/hgext3rd/evolve/obshistory.py Mon May 21 16:56:52 2018 +0200 @@ -101,15 +101,25 @@ We display the node, description (if available) and various information about obsolescence markers affecting it""" + def __init__(self, ui, repo, differ=None, diffopts=None, buffered=False): + super(obsmarker_printer, self).__init__(ui, repo, differ=differ, diffopts=diffopts, buffered=buffered) + + # Compat 4.6 + if not util.safehasattr(self, "_includediff"): + self._includediff = diffopts and diffopts.get('patch') + # print("PATCH", diffopts, self._includediff) + + self.template = diffopts and diffopts.get('template') + def show(self, ctx, copies=None, matchfn=None, **props): if self.buffered: self.ui.pushbuffer(labeled=True) changenode = ctx.node() - _props = self.diffopts.copy() - _props.update(props) + _props = {"template": self.template} fm = self.ui.formatter('debugobshistory', _props) + _debugobshistorydisplaynode(fm, self.repo, changenode) # Succs markers @@ -117,9 +127,11 @@ succs = sorted(succs) markerfm = fm.nested("markers") + for successor in succs: _debugobshistorydisplaymarker(markerfm, successor, - ctx.node(), self.repo, self.diffopts) + ctx.node(), self.repo, + self._includediff) markerfm.end() markerfm.plain('\n') @@ -373,7 +385,8 @@ markerfm = fm.nested("markers") for successor in sorted(succs): - _debugobshistorydisplaymarker(markerfm, successor, ctxnode, unfi, opts) + includediff = opts and opts.get("patch") + _debugobshistorydisplaymarker(markerfm, successor, ctxnode, unfi, includediff) markerfm.end() precs = precursors.get(ctxnode, ()) @@ -415,7 +428,7 @@ label="evolve.node evolve.missing_change_ctx") fm.plain('\n') -def _debugobshistorydisplaymarker(fm, marker, node, repo, opts): +def _debugobshistorydisplaymarker(fm, marker, node, repo, includediff=False): succnodes = marker[1] date = marker[4] metadata = dict(marker[3]) @@ -489,7 +502,7 @@ fm.write('note', "%s", metadata['note'], label="evolve.note") # Patch display - if opts.get('patch'): + if includediff is True: _patchavailable = patchavailable(node, repo, marker) if _patchavailable[0] is True:
--- a/hgext3rd/topic/__init__.py Sat May 19 18:26:36 2018 +0530 +++ b/hgext3rd/topic/__init__.py Mon May 21 16:56:52 2018 +0200 @@ -176,7 +176,7 @@ 'topic.active': 'green', } -__version__ = '0.9.1.dev' +__version__ = '0.10.0.dev' testedwith = '4.3.3 4.4.2 4.5.2 4.6' minimumhgversion = '4.3'
--- a/tests/test-discovery-obshashrange.t Sat May 19 18:26:36 2018 +0530 +++ b/tests/test-discovery-obshashrange.t Mon May 21 16:56:52 2018 +0200 @@ -224,7 +224,6 @@ remote: adding manifests remote: adding file changes remote: added 1 changesets with 1 changes to 1 files (+1 heads) - remote: 1 new obsolescence markers bundle2-input-bundle: no-transaction bundle2-input-part: "reply:changegroup" (advisory) (params: 0 advisory) supported bundle2-input-part: "reply:obsmarkers" (params: 0 advisory) supported @@ -232,6 +231,7 @@ preparing listkeys for "phases" sending listkeys command received listkey for "phases": 58 bytes + remote: 1 new obsolescence markers $ hg -R ../server blackbox * @0000000000000000000000000000000000000000 (*)> -R server serve --stdio (glob) * @0000000000000000000000000000000000000000 (*)> strip detected, evo-ext-stablerange-mergepoint cache reset (glob)
--- a/tests/test-divergent.t Sat May 19 18:26:36 2018 +0530 +++ b/tests/test-divergent.t Mon May 21 16:56:52 2018 +0200 @@ -57,8 +57,8 @@ merge:[2] add bdivergent1 with: [3] add bdivergent2 base: [1] add _b - updating to "local" conflict - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved + updating to "local" side of the conflict: c2f698071cba + merging "other" content-divergent changeset 'e708fd28d5cf' 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory is now at c26f1d3baed2 $ hg log -G @@ -102,8 +102,8 @@ merge:[6] add cdivergent1 with: [7] cdivergent2 base: [5] add _c - updating to "local" conflict - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + updating to "local" side of the conflict: 26c7705fee96 + merging "other" content-divergent changeset '0a768ef678d9' 0 files updated, 0 files merged, 0 files removed, 0 files unresolved nothing changed working directory is now at 26c7705fee96 @@ -152,6 +152,7 @@ merge:[3] add bdivergent2 with: [2] add bdivergent1 base: [1] add _b + merging "other" content-divergent changeset 'c2f698071cba' 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory is now at aa26817f6fbe
--- a/tests/test-evolve-obshistory.t Sat May 19 18:26:36 2018 +0530 +++ b/tests/test-evolve-obshistory.t Mon May 21 16:56:52 2018 +0200 @@ -222,9 +222,9 @@ (use --hidden to access hidden revisions) [255] $ hg update --hidden "desc(A0)" - updating to a hidden changeset 471f378eab4c + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 471f378eab4c (hidden revision '471f378eab4c' was rewritten as: 4ae3a4151de9) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (471f378eab4c) (use 'hg evolve' to update to its successor: 4ae3a4151de9) @@ -325,9 +325,9 @@ (use --hidden to access hidden revisions) [255] $ hg up --hidden -r 'desc(B0)' - updating to a hidden changeset 0dec01379d3b + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 0dec01379d3b (hidden revision '0dec01379d3b' is pruned) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (0dec01379d3b) (use 'hg evolve' to update to its parent successor) @@ -524,9 +524,9 @@ (use --hidden to access hidden revisions) [255] $ hg update --hidden 'min(desc(A0))' - updating to a hidden changeset 471597cad322 + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 471597cad322 (hidden revision '471597cad322' was split as: 337fec4d2edc, f257fde29c7a) - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (471597cad322) (use 'hg evolve' to update to its tipmost successor: 337fec4d2edc, f257fde29c7a) @@ -805,9 +805,9 @@ (use --hidden to access hidden revisions) [255] $ hg update --hidden 'min(desc(A0))' - updating to a hidden changeset de7290d8b885 + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset de7290d8b885 (hidden revision 'de7290d8b885' was split as: 337fec4d2edc, f257fde29c7a and 2 more) - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (de7290d8b885) (use 'hg evolve' to update to its tipmost successor: 337fec4d2edc, f257fde29c7a and 2 more) @@ -1030,9 +1030,9 @@ (use --hidden to access hidden revisions) [255] $ hg update --hidden 'desc(A0)' - updating to a hidden changeset 471f378eab4c + 0 files updated, 0 files merged, 1 files removed, 0 files unresolved + updated to hidden changeset 471f378eab4c (hidden revision '471f378eab4c' was rewritten as: eb5a0daa2192) - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved working directory parent is obsolete! (471f378eab4c) (use 'hg evolve' to update to its successor: eb5a0daa2192) $ hg update 0dec01379d3b @@ -1040,9 +1040,9 @@ (use --hidden to access hidden revisions) [255] $ hg update --hidden 'desc(B0)' - updating to a hidden changeset 0dec01379d3b + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 0dec01379d3b (hidden revision '0dec01379d3b' was rewritten as: eb5a0daa2192) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (0dec01379d3b) (use 'hg evolve' to update to its successor: eb5a0daa2192) @@ -1077,9 +1077,9 @@ summary: ROOT $ hg update --hidden 'desc(A0)' - updating to a hidden changeset 471f378eab4c + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 471f378eab4c (hidden revision '471f378eab4c' was rewritten as: fdf9bde5129a) - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (471f378eab4c) (use 'hg evolve' to update to its successor: fdf9bde5129a) $ hg amend -m "A2" @@ -1377,9 +1377,9 @@ (use --hidden to access hidden revisions) [255] $ hg update --hidden 'desc(A0)' - updating to a hidden changeset 471f378eab4c + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 471f378eab4c (hidden revision '471f378eab4c' has diverged) - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (471f378eab4c) (471f378eab4c has diverged, use 'hg evolve --list --content-divergent' to resolve the issue) @@ -1608,15 +1608,15 @@ (use --hidden to access hidden revisions) [255] $ hg update --hidden 'desc(A0)' - updating to a hidden changeset 471f378eab4c + 0 files updated, 0 files merged, 1 files removed, 0 files unresolved + updated to hidden changeset 471f378eab4c (hidden revision '471f378eab4c' was rewritten as: eb5a0daa2192) - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved working directory parent is obsolete! (471f378eab4c) (use 'hg evolve' to update to its successor: eb5a0daa2192) $ hg update --hidden 0dec01379d3b - updating to a hidden changeset 0dec01379d3b + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 0dec01379d3b (hidden revision '0dec01379d3b' was rewritten as: eb5a0daa2192) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (0dec01379d3b) (use 'hg evolve' to update to its successor: eb5a0daa2192) $ hg update 0dec01379d3b
--- a/tests/test-evolve-templates.t Sat May 19 18:26:36 2018 +0530 +++ b/tests/test-evolve-templates.t Mon May 21 16:56:52 2018 +0200 @@ -63,9 +63,9 @@ Check templates --------------- $ hg up 'desc(A0)' --hidden - updating to a hidden changeset 471f378eab4c + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 471f378eab4c (hidden revision '471f378eab4c' was rewritten as: d004c8f274b9) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (471f378eab4c) (use 'hg evolve' to update to its successor: d004c8f274b9) @@ -156,9 +156,9 @@ $ hg up 'desc(A1)' --hidden - updating to a hidden changeset a468dc9b3633 + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset a468dc9b3633 (hidden revision 'a468dc9b3633' was rewritten as: d004c8f274b9) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (a468dc9b3633) (use 'hg evolve' to update to its successor: d004c8f274b9) @@ -332,9 +332,9 @@ --------------- $ hg up 'obsolete()' --hidden - updating to a hidden changeset 471597cad322 + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 471597cad322 (hidden revision '471597cad322' was split as: 337fec4d2edc, f257fde29c7a) - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (471597cad322) (use 'hg evolve' to update to its tipmost successor: 337fec4d2edc, f257fde29c7a) @@ -463,9 +463,9 @@ --------------- $ hg up 'desc(A0)' --hidden - updating to a hidden changeset 471f378eab4c + 0 files updated, 0 files merged, 1 files removed, 0 files unresolved + updated to hidden changeset 471f378eab4c (hidden revision '471f378eab4c' was rewritten as: eb5a0daa2192) - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved working directory parent is obsolete! (471f378eab4c) (use 'hg evolve' to update to its successor: eb5a0daa2192) @@ -490,9 +490,9 @@ o ea207398892e $ hg up 'desc(B0)' --hidden - updating to a hidden changeset 0dec01379d3b + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 0dec01379d3b (hidden revision '0dec01379d3b' was rewritten as: eb5a0daa2192) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (0dec01379d3b) (use 'hg evolve' to update to its successor: eb5a0daa2192) @@ -597,9 +597,9 @@ summary: ROOT $ hg update --hidden 'desc(A0)' - updating to a hidden changeset 471f378eab4c + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 471f378eab4c (hidden revision '471f378eab4c' was rewritten as: fdf9bde5129a) - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (471f378eab4c) (use 'hg evolve' to update to its successor: fdf9bde5129a) $ hg amend -m "A2" @@ -638,9 +638,9 @@ --------------- $ hg up 'desc(A0)' --hidden - updating to a hidden changeset 471f378eab4c + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 471f378eab4c (hidden revision '471f378eab4c' has diverged) - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (471f378eab4c) (471f378eab4c has diverged, use 'hg evolve --list --content-divergent' to resolve the issue) @@ -802,9 +802,9 @@ --------------- $ hg up 'desc(A0)' --hidden - updating to a hidden changeset 471f378eab4c + 0 files updated, 0 files merged, 1 files removed, 0 files unresolved + updated to hidden changeset 471f378eab4c (hidden revision '471f378eab4c' was rewritten as: eb5a0daa2192) - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved working directory parent is obsolete! (471f378eab4c) (use 'hg evolve' to update to its successor: eb5a0daa2192) $ hg tlog @@ -827,9 +827,9 @@ o ea207398892e $ hg up 'desc(B0)' --hidden - updating to a hidden changeset 0dec01379d3b + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 0dec01379d3b (hidden revision '0dec01379d3b' was rewritten as: eb5a0daa2192) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (0dec01379d3b) (use 'hg evolve' to update to its successor: eb5a0daa2192) $ hg tlog @@ -861,9 +861,9 @@ $ hg up 'desc(B1)' --hidden - updating to a hidden changeset b7ea6d14e664 + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset b7ea6d14e664 (hidden revision 'b7ea6d14e664' was rewritten as: eb5a0daa2192) - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (b7ea6d14e664) (use 'hg evolve' to update to its successor: eb5a0daa2192) $ hg tlog @@ -1120,9 +1120,9 @@ o ea207398892e $ hg up -r "desc(B0)" --hidden - updating to a hidden changeset 0dec01379d3b + 2 files updated, 0 files merged, 1 files removed, 0 files unresolved + updated to hidden changeset 0dec01379d3b (hidden revision '0dec01379d3b' is pruned) - 2 files updated, 0 files merged, 1 files removed, 0 files unresolved working directory parent is obsolete! (0dec01379d3b) (use 'hg evolve' to update to its parent successor) $ hg tlog @@ -1486,9 +1486,9 @@ o ea207398892e $ hg up --hidden 4 - updating to a hidden changeset 9bd10a0775e4 + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 9bd10a0775e4 (hidden revision '9bd10a0775e4' has diverged) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (9bd10a0775e4) (9bd10a0775e4 has diverged, use 'hg evolve --list --content-divergent' to resolve the issue) $ hg rebase -r 7 -d 8 --config extensions.rebase= @@ -1551,9 +1551,9 @@ ------------ $ hg up "desc(A0)" --hidden - updating to a hidden changeset 471f378eab4c + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 471f378eab4c (hidden revision '471f378eab4c' is pruned) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (471f378eab4c) (use 'hg evolve' to update to its parent successor) $ hg tlog
--- a/tests/test-evolve.t Sat May 19 18:26:36 2018 +0530 +++ b/tests/test-evolve.t Mon May 21 16:56:52 2018 +0200 @@ -1254,18 +1254,18 @@ Shows "use 'hg evolve' to..." hints iff the evolve command is enabled $ hg --hidden up 14 - updating to a hidden changeset 484fb3cfa7f2 + 2 files updated, 0 files merged, 1 files removed, 0 files unresolved + updated to hidden changeset 484fb3cfa7f2 (hidden revision '484fb3cfa7f2' was rewritten as: 98e171e2f272) - 2 files updated, 0 files merged, 1 files removed, 0 files unresolved working directory parent is obsolete! (484fb3cfa7f2) $ cat >> $HGRCPATH <<EOF > [experimental] > evolutioncommands=evolve > EOF $ hg --hidden up 15 - updating to a hidden changeset daa1ff1c7fbd + 1 files updated, 0 files merged, 1 files removed, 0 files unresolved + updated to hidden changeset daa1ff1c7fbd (hidden revision 'daa1ff1c7fbd' was rewritten as: 0c049e4e5422) - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved working directory parent is obsolete! (daa1ff1c7fbd) (use 'hg evolve' to update to its successor: 0c049e4e5422)
--- a/tests/test-obsolete.t Sat May 19 18:26:36 2018 +0530 +++ b/tests/test-obsolete.t Mon May 21 16:56:52 2018 +0200 @@ -121,7 +121,7 @@ 4 - 725c380fe99b $ hg up --hidden 3 -q - updating to a hidden changeset 0d3f46688ccc + updated to hidden changeset 0d3f46688ccc (hidden revision '0d3f46688ccc' was rewritten as: 725c380fe99b) working directory parent is obsolete! (0d3f46688ccc) (reported by parents too) @@ -707,7 +707,7 @@ $ hg up --hidden 3 -q - updating to a hidden changeset 0d3f46688ccc + updated to hidden changeset 0d3f46688ccc (hidden revision '0d3f46688ccc' has diverged) working directory parent is obsolete! (0d3f46688ccc) $ hg evolve @@ -727,9 +727,9 @@ Check import reports new unstable changeset: $ hg up --hidden 2 - updating to a hidden changeset 4538525df7e2 + 1 files updated, 0 files merged, 1 files removed, 0 files unresolved + updated to hidden changeset 4538525df7e2 (hidden revision '4538525df7e2' has diverged) - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved working directory parent is obsolete! (4538525df7e2) (4538525df7e2 has diverged, use 'hg evolve --list --content-divergent' to resolve the issue) $ hg export 9468a5f5d8b2 | hg import -
--- a/tests/test-sharing.t Sat May 19 18:26:36 2018 +0530 +++ b/tests/test-sharing.t Mon May 21 16:56:52 2018 +0200 @@ -509,6 +509,7 @@ merge:[5] fix bug 24 (v2 by bob) with: [6] fix bug 24 (v2 by alice) base: [4] fix bug 24 (v1) + merging "other" content-divergent changeset 'e3f99ce9d9cd' 0 files updated, 1 files merged, 0 files removed, 0 files unresolved working directory is now at 5ad6037c046c $ hg log -q -r 'contentdivergent()'
--- a/tests/test-stabilize-result.t Sat May 19 18:26:36 2018 +0530 +++ b/tests/test-stabilize-result.t Mon May 21 16:56:52 2018 +0200 @@ -239,9 +239,9 @@ $ echo 'babar' >> a $ hg amend $ hg up --hidden 3932c176bbaa - updating to a hidden changeset 3932c176bbaa + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 3932c176bbaa (hidden revision '3932c176bbaa' was rewritten as: d2f173e25686) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (3932c176bbaa) (use 'hg evolve' to update to its successor: d2f173e25686) $ mv a a.old @@ -290,7 +290,7 @@ merge:[14] More addition with: [13] More addition base: [12] More addition - merging content-divergent changeset + merging "other" content-divergent changeset 'd2f173e25686' resolving manifests merging a 0 files updated, 1 files merged, 0 files removed, 0 files unresolved @@ -349,9 +349,9 @@ ------------------------------------------------- $ hg up --hidden 3932c176bbaa - updating to a hidden changeset 3932c176bbaa + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 3932c176bbaa (hidden revision '3932c176bbaa' was rewritten as: f344982e63c4) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (3932c176bbaa) (use 'hg evolve' to update to its successor: f344982e63c4) $ echo 'gotta break' >> a @@ -362,6 +362,23 @@ $ hg phase 'contentdivergent()' 15: draft 17: draft + + $ glog + @ 17:0b336205a5d0@default(draft) bk:[] More addition (2) + | + | * 15:f344982e63c4@default(draft) bk:[] More addition + |/ + | o 11:8fc63fe1f297@default(draft) bk:[] phase-divergent update to 1cf0aacfd363: + | | + o | 7:7bc2f5967f5e@default(draft) bk:[] add c + | | + | o 6:1cf0aacfd363@default(public) bk:[] newer a + |/ + o 5:66719795a494@default(public) bk:[changea] changea + | + o 0:07f494440405@default(public) bk:[] adda + + $ hg evolve -qn --content-divergent hg update -c 0b336205a5d0 && hg merge f344982e63c4 && @@ -373,16 +390,68 @@ merge:[17] More addition (2) with: [15] More addition base: [12] More addition + merging "other" content-divergent changeset 'f344982e63c4' merging a warning: conflicts while merging a! (edit, then use 'hg resolve --mark') 0 files updated, 0 files merged, 0 files removed, 1 files unresolved - use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abort - abort: merge conflict between several amendments (this is not automated yet) - (/!\ You can try: - /!\ * manual merge + resolve => new cset X - /!\ * hg up to the parent of the amended changeset (which are named W and Z) - /!\ * hg revert --all -r X - /!\ * hg ci -m "same message as the amended changeset" => new cset Y - /!\ * hg prune -n Y W Z - ) + abort: fix conflicts and run 'hg evolve --continue' or use 'hg update -C .' to abort [255] + + $ cat > a <<EOF + > jungle + > a + > flore + > arthur + > zephir + > some + > less + > conflict + > babar + > EOF + + $ hg resolve -m + (no more unresolved files) + continue: hg evolve --continue + $ hg evolve --continue + merge:[17] More addition (2) + with: [18] More addition (2) + base: [16] More addition + updating to "local" side of the conflict: 0b336205a5d0 + merging "other" content-divergent changeset 'e015aa78acee' + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + working directory is now at e015aa78acee + $ glog + @ 18:e015aa78acee@default(draft) bk:[] More addition (2) + | + | o 11:8fc63fe1f297@default(draft) bk:[] phase-divergent update to 1cf0aacfd363: + | | + o | 7:7bc2f5967f5e@default(draft) bk:[] add c + | | + | o 6:1cf0aacfd363@default(public) bk:[] newer a + |/ + o 5:66719795a494@default(public) bk:[changea] changea + | + o 0:07f494440405@default(public) bk:[] adda + + $ hg exp + # HG changeset patch + # User test + # Date 0 0 + # Thu Jan 01 00:00:00 1970 +0000 + # Node ID e015aa78acee692d26215fafdb7f70974682739c + # Parent 7bc2f5967f5e4ed277f60a89b7b04cc5d6407ced + More addition (2) + + diff -r 7bc2f5967f5e -r e015aa78acee a + --- a/a Thu Jan 01 00:00:00 1970 +0000 + +++ b/a Thu Jan 01 00:00:00 1970 +0000 + @@ -1,1 +1,9 @@ + +jungle + a + +flore + +arthur + +zephir + +some + +less + +conflict + +babar
--- a/tests/test-touch.t Sat May 19 18:26:36 2018 +0530 +++ b/tests/test-touch.t Mon May 21 16:56:52 2018 +0200 @@ -32,9 +32,9 @@ $ hg add b $ hg commit -m ab --amend $ hg up --hidden 1 - updating to a hidden changeset [0-9a-f]{12} (re) + 0 files updated, 0 files merged, 1 files removed, 0 files unresolved + updated to hidden changeset * (glob) (hidden revision '*' was rewritten as: *) (glob) - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved working directory parent is obsolete! (*) (glob) (use 'hg evolve' to update to its successor: *) (glob) $ hg log -G
--- a/tests/test-uncommit.t Sat May 19 18:26:36 2018 +0530 +++ b/tests/test-uncommit.t Mon May 21 16:56:52 2018 +0200 @@ -238,10 +238,10 @@ Test phase is preserved, no local changes $ hg up -C 3 --hidden - updating to a hidden changeset 5eb72dbe0cb4 - (hidden revision '5eb72dbe0cb4' was rewritten as: e8db4aa611f6) 8 files updated, 0 files merged, 1 files removed, 0 files unresolved (leaving bookmark touncommit-bm) + updated to hidden changeset 5eb72dbe0cb4 + (hidden revision '5eb72dbe0cb4' was rewritten as: e8db4aa611f6) working directory parent is obsolete! (5eb72dbe0cb4) (use 'hg evolve' to update to its successor: e8db4aa611f6) $ hg --config extensions.purge= purge @@ -287,9 +287,9 @@ Test --all $ hg up -C 3 --hidden - updating to a hidden changeset 5eb72dbe0cb4 + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + updated to hidden changeset 5eb72dbe0cb4 (hidden revision '5eb72dbe0cb4' has diverged) - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved working directory parent is obsolete! (5eb72dbe0cb4) (5eb72dbe0cb4 has diverged, use 'hg evolve --list --content-divergent' to resolve the issue) $ hg --config extensions.purge= purge