[PATCH] rebase: fail-fast pull if working dir is not clean
Pierre-Yves David
pierre-yves.david at ens-lyon.org
Wed Jan 4 10:53:28 EST 2017
On 01/02/2017 10:18 AM, Valters Vingolds wrote:
> # HG changeset patch
> # User Valters Vingolds <valters at vingolds.ch>
> # Date 1483272989 -3600
> # Sun Jan 01 13:16:29 2017 +0100
> # Branch stable
> # Node ID 390134fdec5612ec59f33c02ca45e969839b3a1b
> # Parent 7817df5585db1d87d3f6c7f496085c86d87e2e9a
> rebase: fail-fast pull if working dir is not clean
>
> Refuse to run 'hg pull --rebase' if there are uncommitted changes:
> so that instead of going ahead with fetching changes and then suddenly aborting
> the rebase, we can warn user of uncommitted changes (or unclean repo state)
> right up front.
If I get that change right, this means that if the working copy is dirty
(or operation are in progress) we no longer perform the "pull" phase of
the "pull+rebase" operation.
I think this make sense but this a behavior change so it needs a "(BC)"
flag at the end of the description summary. In addition, we will want
this tested. Can you update one of the rebase testcase to check this
case? (see "tests/test-rebase*.t")
Thanks,
> diff --git a/hgext/rebase.py b/hgext/rebase.py
> --- a/hgext/rebase.py
> +++ b/hgext/rebase.py
> @@ -1306,6 +1306,10 @@
> ui.debug('--update and --rebase are not compatible, ignoring '
> 'the update flag\n')
>
> + ui.debug('before rebase: ensure working dir is clean\n')
> + cmdutil.checkunfinished(repo)
> + cmdutil.bailifchanged(repo)
> +
> revsprepull = len(repo)
> origpostincoming = commands.postincoming
> def _dummy(*args, **kwargs):
--
Pierre-Yves David
More information about the Mercurial-devel
mailing list