diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py --- a/mercurial/localrepo.py +++ b/mercurial/localrepo.py @@ -2956,6 +2956,7 @@ or self.ui.configbool(b'ui', b'allowemptycommit') ) if not allowemptycommit: + ms.reset() return None if merge and cctx.deleted(): diff --git a/relnotes/next b/relnotes/next --- a/relnotes/next +++ b/relnotes/next @@ -61,6 +61,9 @@ * `hg debugmergestate` output format changed. Let us know if that is causing you problems and we'll roll it back. + * Resolved merge conflicts are now cleared by `hg commit` even if the + working copy has no changes. + == Internal API Changes == diff --git a/tests/test-update-branches.t b/tests/test-update-branches.t --- a/tests/test-update-branches.t +++ b/tests/test-update-branches.t @@ -357,7 +357,6 @@ nothing changed [1] $ hg resolve -l - R a Change/delete conflict is not allowed $ hg up -qC 3