# HG changeset patch # User Martin von Zweigbergk # Date 1605590922 28800 # Node ID 073bb7563931114c6d41b91939a13f93fcd6396c # Parent 781b09790633deb7cdedcdec96ec09ea840ea45f shelve: clear merge state after partial shelve Differential Revision: https://phab.mercurial-scm.org/D9335 diff -r 781b09790633 -r 073bb7563931 mercurial/shelve.py --- a/mercurial/shelve.py Mon Nov 16 22:38:36 2020 -0800 +++ b/mercurial/shelve.py Mon Nov 16 21:28:42 2020 -0800 @@ -564,6 +564,10 @@ scmutil.movedirstate(repo, parent, match) else: hg.update(repo, parent.node()) + ms = mergestatemod.mergestate.read(repo) + if not ms.unresolvedcount(): + ms.reset() + if origbranch != repo[b'.'].branch() and not _isbareshelve(pats, opts): repo.dirstate.setbranch(origbranch) diff -r 781b09790633 -r 073bb7563931 tests/test-shelve.t --- a/tests/test-shelve.t Mon Nov 16 22:38:36 2020 -0800 +++ b/tests/test-shelve.t Mon Nov 16 21:28:42 2020 -0800 @@ -810,9 +810,8 @@ ? foo/foo $ hg bookmark \* test (4|13):33f7f61e6c5e (re) -BROKEN: there shouldn't be a merge state +there shouldn't be a merge state $ hg resolve -l - R a/a $ hg unshelve unshelving change 'test' temporarily committing pending changes (restore with 'hg unshelve --abort')