# HG changeset patch # User Siddharth Agarwal # Date 1379983413 25200 # Node ID 76df01e56e7fe20e59b07117efbaf7aa46f1c8bb # Parent a9abdb168425276439d8eaa16cf8b1f85dd37760 update: improve error message for clean non-linear update diff -r a9abdb168425 -r 76df01e56e7f mercurial/merge.py --- a/mercurial/merge.py Mon Sep 23 19:02:32 2013 -0700 +++ b/mercurial/merge.py Mon Sep 23 17:43:33 2013 -0700 @@ -664,7 +664,7 @@ x = can't happen * = don't-care - 1 = abort: crosses branches (use 'hg merge' or 'hg update -c') + 1 = abort: not a linear update (merge or update --check to force update) 2 = abort: crosses branches (use 'hg merge' to merge or use 'hg update -C' to discard changes) 3 = abort: uncommitted local changes @@ -731,9 +731,9 @@ " --clean to discard changes)") raise util.Abort(msg) else: # node is none - msg = _("crosses branches (merge branches or update" - " --check to force update)") - raise util.Abort(msg) + msg = _("not a linear update") + hint = _("merge or update --check to force update") + raise util.Abort(msg, hint=hint) else: # Allow jumping branches if clean and specific rev given pa = p1 diff -r a9abdb168425 -r 76df01e56e7f tests/test-issue1502.t --- a/tests/test-issue1502.t Mon Sep 23 19:02:32 2013 -0700 +++ b/tests/test-issue1502.t Mon Sep 23 17:43:33 2013 -0700 @@ -19,7 +19,8 @@ adding manifests adding file changes added 1 changesets with 1 changes to 1 files (+1 heads) - not updating: crosses branches (merge branches or update --check to force update) + not updating: not a linear update + (merge or update --check to force update) $ hg -R foo1 book branchy $ hg -R foo1 book diff -r a9abdb168425 -r 76df01e56e7f tests/test-merge5.t --- a/tests/test-merge5.t Mon Sep 23 19:02:32 2013 -0700 +++ b/tests/test-merge5.t Mon Sep 23 17:43:33 2013 -0700 @@ -14,7 +14,8 @@ $ hg update 1 1 files updated, 0 files merged, 0 files removed, 0 files unresolved $ hg update - abort: crosses branches (merge branches or update --check to force update) + abort: not a linear update + (merge or update --check to force update) [255] $ rm b $ hg update -c diff -r a9abdb168425 -r 76df01e56e7f tests/test-pull-update.t --- a/tests/test-pull-update.t Mon Sep 23 19:02:32 2013 -0700 +++ b/tests/test-pull-update.t Mon Sep 23 17:43:33 2013 -0700 @@ -25,7 +25,8 @@ adding manifests adding file changes added 1 changesets with 1 changes to 1 files (+1 heads) - not updating: crosses branches (merge branches or update --check to force update) + not updating: not a linear update + (merge or update --check to force update) $ cd ../tt @@ -38,7 +39,8 @@ adding manifests adding file changes added 1 changesets with 1 changes to 1 files (+1 heads) - not updating: crosses branches (merge branches or update --check to force update) + not updating: not a linear update + (merge or update --check to force update) $ HGMERGE=true hg merge merging foo diff -r a9abdb168425 -r 76df01e56e7f tests/test-update-branches.t --- a/tests/test-update-branches.t Mon Sep 23 19:02:32 2013 -0700 +++ b/tests/test-update-branches.t Mon Sep 23 17:43:33 2013 -0700 @@ -94,7 +94,8 @@ parent=5 $ norevtest 'none clean same' clean 2 - abort: crosses branches (merge branches or update --check to force update) + abort: not a linear update + (merge or update --check to force update) parent=2