Mercurial > hg
comparison hgext/histedit.py @ 19847:45c3086880c7 stable
histedit: suggest "histedit --abort" for inconsistent histedit state
Mercurial earlier than 2.7 allows users to do anything other than
starting new histedit, even though current histedit is not finished or
aborted yet. So, unfinished (and maybe inconsistent now) histedit
states may be left and forgotten in repositories.
Before this patch, histedit extension shows the message below, when it
detects such inconsistent state:
abort: REV is not an ancestor of working directory
(update to REV or descendant and run "hg histedit --continue" again)
But this message is incorrect, unless old Mercurial is re-installed,
because Mercurial 2.7 or later disallows users to update the working
directory to another revision.
This patch changes the hint message to suggest "hg histedit --abort".
author | FUJIWARA Katsunori <foozy@lares.dti.ne.jp> |
---|---|
date | Tue, 01 Oct 2013 00:35:07 +0900 |
parents | 1aaefba2a3a9 |
children | 57479e0d203d |
comparison
equal
deleted
inserted
replaced
19846:9789670992d6 | 19847:45c3086880c7 |
---|---|
644 if parentctx.node() != node.nullid: | 644 if parentctx.node() != node.nullid: |
645 if not newchildren: | 645 if not newchildren: |
646 # `parentctxnode` should match but no result. This means that | 646 # `parentctxnode` should match but no result. This means that |
647 # currentnode is not a descendant from parentctxnode. | 647 # currentnode is not a descendant from parentctxnode. |
648 msg = _('%s is not an ancestor of working directory') | 648 msg = _('%s is not an ancestor of working directory') |
649 hint = _('update to %s or descendant and run "hg histedit ' | 649 hint = _('use "histedit --abort" to clear broken state') |
650 '--continue" again') % parentctx | |
651 raise util.Abort(msg % parentctx, hint=hint) | 650 raise util.Abort(msg % parentctx, hint=hint) |
652 newchildren.pop(0) # remove parentctxnode | 651 newchildren.pop(0) # remove parentctxnode |
653 # Commit dirty working directory if necessary | 652 # Commit dirty working directory if necessary |
654 new = None | 653 new = None |
655 m, a, r, d = repo.status()[:4] | 654 m, a, r, d = repo.status()[:4] |