diff --git a/mercurial/commands.py b/mercurial/commands.py --- a/mercurial/commands.py +++ b/mercurial/commands.py @@ -1677,7 +1677,7 @@ raise error.Abort(_('current revision is already a branch closing' ' head')) elif not bheads: - raise error.Abort(_('can only close branch heads')) + raise error.Abort(_('branch "%s" has no heads to close') % branch) elif branch == repo['.'].branch() and repo['.'].node() not in bheads: raise error.Abort(_('can only close branch heads')) elif opts.get('amend'): diff --git a/tests/test-commit-amend.t b/tests/test-commit-amend.t --- a/tests/test-commit-amend.t +++ b/tests/test-commit-amend.t @@ -892,7 +892,7 @@ marked working directory as branch silliness $ echo b >> b $ hg ci --close-branch -m'open and close' - abort: can only close branch heads + abort: branch "silliness" has no heads to close [255] Test that amend with --secret creates new secret changeset forcibly