# HG changeset patch # User Ryan McElroy # Date 1490871010 25200 # Node ID ae6bab095c669dce53b7d422a12870854e7f73f3 # Parent 9ddf875183b0334a47b1270584102a2f2dc5fc89 rebase: abort hg pull --rebase if rebase.requiredest is set (issue5514) Previously, the pull would succeed, but the subsequent rebase would fail due to the rebase.requiredest flag. Now abort earlier with a more useful error message. diff -r 9ddf875183b0 -r ae6bab095c66 hgext/rebase.py --- a/hgext/rebase.py Thu Mar 30 03:50:10 2017 -0700 +++ b/hgext/rebase.py Thu Mar 30 03:50:10 2017 -0700 @@ -1362,6 +1362,11 @@ 'Call rebase after pull if the latter has been invoked with --rebase' ret = None if opts.get('rebase'): + if ui.configbool('commands', 'rebase.requiredest'): + msg = _('rebase destination required by configuration') + hint = _('use hg pull followed by hg rebase -d DEST') + raise error.Abort(msg, hint=hint) + wlock = lock = None try: wlock = repo.wlock() diff -r 9ddf875183b0 -r ae6bab095c66 tests/test-rebase-dest.t --- a/tests/test-rebase-dest.t Thu Mar 30 03:50:10 2017 -0700 +++ b/tests/test-rebase-dest.t Thu Mar 30 03:50:10 2017 -0700 @@ -72,13 +72,7 @@ $ echo f > f $ hg commit -qAm ff $ hg pull --rebase - pulling from $TESTTMP/repo - searching for changes - adding changesets - adding manifests - adding file changes - added 1 changesets with 2 changes to 2 files (+1 heads) - abort: you must specify a destination - (use: hg rebase -d REV) + abort: rebase destination required by configuration + (use hg pull followed by hg rebase -d DEST) [255]