[PATCH] rebase: abort if *any* commit in rebase set is public
Yuya Nishihara
yuya at tcha.org
Sat Mar 11 14:56:58 EST 2017
On Sat, 11 Mar 2017 10:47:25 -0800, Martin von Zweigbergk via Mercurial-devel wrote:
> # HG changeset patch
> # User Martin von Zweigbergk <martinvonz at google.com>
> # Date 1489257344 28800
> # Sat Mar 11 10:35:44 2017 -0800
> # Node ID de5616a5d81c49449fdebc80af76b15ed5adc795
> # Parent c134a33b1d73896a616475127797ad7fcfa0608d
> rebase: abort if *any* commit in rebase set is public
Good catch. Queued, thanks.
> --- a/hgext/rebase.py Wed Mar 01 16:19:41 2017 -0800
> +++ b/hgext/rebase.py Sat Mar 11 10:35:44 2017 -0800
> @@ -326,11 +326,11 @@
> self.ui.status(_('nothing to rebase\n'))
> return _nothingtorebase()
>
> - root = min(rebaseset)
> - if not self.keepf and not self.repo[root].mutable():
> - raise error.Abort(_("can't rebase public changeset %s")
> - % self.repo[root],
> - hint=_("see 'hg help phases' for details"))
> + for root in self.repo.set('roots(%ld)', rebaseset):
> + if not self.keepf and not self.repo[root].mutable():
> + raise error.Abort(_("can't rebase public changeset %s")
> + % self.repo[root],
> + hint=_("see 'hg help phases' for details"))
repo.set() yields context objects, so repo[root] isn't necessary. Fixed in
flight.
More information about the Mercurial-devel
mailing list