# HG changeset patch # User Pierre-Yves David <pierre-yves.da...@ens-lyon.org> # Date 1491225382 -7200 # Mon Apr 03 15:16:22 2017 +0200 # Node ID 32116e1ad0d93b48d344f317899b974628310850 # Parent 2632df096fc0ac7582382b1f94ea4b9ad0bce8f2 # EXP-Topic update.mergehint # Available At https://www.mercurial-scm.org/repo/users/marmoute/mercurial/ # hg pull https://www.mercurial-scm.org/repo/users/marmoute/mercurial/ -r 32116e1ad0d9 update: add a hint when aborting for uncommitted changes
Plain abort is a bit frustrating for the user. We now point at the '--merge' option in the hint. This is similar to what evolve 'next' and 'prev' do. Not that evolution use a more direct hint "(do you want --merge)", but it might be a bit too error prone for new user. diff --git a/mercurial/hg.py b/mercurial/hg.py --- a/mercurial/hg.py +++ b/mercurial/hg.py @@ -761,7 +761,8 @@ def updatetotally(ui, repo, checkout, br ret = _clean(repo, checkout) else: if updatecheck == 'abort': - cmdutil.bailifchanged(repo, merge=False) + hint = _('to merge these changes with destination, use --merge') + cmdutil.bailifchanged(repo, merge=False, hint=hint) updatecheck = 'none' ret = _update(repo, checkout, updatecheck=updatecheck) diff --git a/tests/test-merge5.t b/tests/test-merge5.t --- a/tests/test-merge5.t +++ b/tests/test-merge5.t @@ -16,6 +16,7 @@ $ rm b $ hg update -c 2 abort: uncommitted changes + (to merge these changes with destination, use --merge) [255] $ hg revert b $ hg update -c 2 diff --git a/tests/test-pull-update.t b/tests/test-pull-update.t --- a/tests/test-pull-update.t +++ b/tests/test-pull-update.t @@ -27,6 +27,7 @@ Should respect config to disable dirty u adding file changes added 1 changesets with 1 changes to 1 files (+1 heads) abort: uncommitted changes + (to merge these changes with destination, use --merge) [255] $ hg --config extensions.strip= strip --no-backup tip $ hg co -qC tip 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 @@ -157,6 +157,7 @@ Cases are run as shown in that table, ro $ revtest '-c dirty linear' dirty 1 2 -c abort: uncommitted changes + (to merge these changes with destination, use --merge) parent=1 M foo @@ -172,6 +173,7 @@ Cases are run as shown in that table, ro $ revtest '-c dirtysub linear' dirtysub 1 2 -c abort: uncommitted changes in subrepository 'sub' + (to merge these changes with destination, use --merge) parent=1 M sub/suba @@ -200,11 +202,13 @@ Cases are run as shown in that table, ro $ revtest 'none dirty linear' dirty 1 2 abort: uncommitted changes + (to merge these changes with destination, use --merge) parent=1 M foo $ revtest 'none dirty linear' dirty 1 2 -c abort: uncommitted changes + (to merge these changes with destination, use --merge) parent=1 M foo @@ -226,6 +230,7 @@ Cases are run as shown in that table, ro $ revtest 'none dirty linear' dirty 1 2 -c abort: uncommitted changes + (to merge these changes with destination, use --merge) parent=1 M foo @@ -269,6 +274,7 @@ Cases are run as shown in that table, ro $ revtest 'none dirty linear' dirty 1 2 -c abort: uncommitted changes + (to merge these changes with destination, use --merge) parent=1 M foo @@ -323,6 +329,7 @@ Uses default value of "linear" when valu Setup for later tests $ revtest 'none dirty linear' dirty 1 2 -c abort: uncommitted changes + (to merge these changes with destination, use --merge) parent=1 M foo @@ -560,6 +567,7 @@ Test that boolean flags allow --no-flag > EOF $ hg co 2 abort: uncommitted changes + (to merge these changes with destination, use --merge) [255] $ hg co --no-check 2 0 files updated, 0 files merged, 0 files removed, 0 files unresolved diff --git a/tests/test-update-issue1456.t b/tests/test-update-issue1456.t --- a/tests/test-update-issue1456.t +++ b/tests/test-update-issue1456.t @@ -19,6 +19,7 @@ Test that local removed/deleted, remote $ echo dirty > foo $ hg up -c abort: uncommitted changes + (to merge these changes with destination, use --merge) [255] $ hg up -q $ cat foo _______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel