[PATCH 3 of 3 v2] histedit: add implicit base to default plan

Augie Fackler raf at durin42.com
Wed May 4 23:24:55 EDT 2016


On Tue, May 03, 2016 at 04:17:57PM +0000, timeless wrote:
> # HG changeset patch
> # User timeless <timeless at mozdev.org>
> # Date 1462289414 0
> #      Tue May 03 15:30:14 2016 +0000
> # Node ID 8b591803219cfcfdae9c878a6237f9e22e452544
> # Parent  69374882b37156b87eea935feeaa696235abf204
> # Available At bb://timeless/mercurial-crew
> #              hg pull bb://timeless/mercurial-crew -r 8b591803219c
> histedit: add implicit base to default plan

Not sure how I feel about this. Ryan, do you have any thoughts? It
does seem like it'd make the base operator a little more discoverable
for folks...

>
> With experimental.histeditng, there is a base command,
> in order to faciliate its use, list the implicit base
> in the default plan.
>
> diff -r 69374882b371 -r 8b591803219c hgext/histedit.py
> --- a/hgext/histedit.py	Tue May 03 16:15:41 2016 +0000
> +++ b/hgext/histedit.py	Tue May 03 15:30:14 2016 +0000
> @@ -813,6 +813,23 @@
>          basectx = self.repo['.']
>          return basectx, []
>
> +    @classmethod
> +    def initialactions(cls, state, actions):
> +        """insert the implicit base into the action list
> +
> +        Base lets one set the target for the next action.
> +        It's helpful to know what that base is, in case you
> +        are trying to split some commits to that base.
> +        Also, by showing the action in the plan, it's easier
> +        for users to understand how to use it."""
> +        if not actions:
> +            return actions
> +        act = actions[0]
> +        if not isinstance(act, pick):
> +            return actions
> +        act = cls(state, state.repo[act.node].parents()[0])
> +        return [act] + actions
> +
>  @action(['_multifold'],
>          _(
>      """fold subclass used for when multiple folds happen in a row
> diff -r 69374882b371 -r 8b591803219c tests/test-histedit-base.t
> --- a/tests/test-histedit-base.t	Tue May 03 16:15:41 2016 +0000
> +++ b/tests/test-histedit-base.t	Tue May 03 15:30:14 2016 +0000
> @@ -42,6 +42,7 @@
>  Verify that implicit base command and help are listed
>
>    $ HGEDITOR=cat hg histedit |grep base
> +  base 24b6387c8c8c 5 F
>    #  b, base = checkout changeset and apply further changesets from there
>
>  Go to D
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


More information about the Mercurial-devel mailing list