Making "hg push -r foo" changes phases

Augie Fackler raf at
Fri Jun 14 13:06:12 CDT 2013

On Fri, Jun 14, 2013 at 09:30:36AM -0400, Jordi Gutiérrez Hermoso wrote:
> On 13 June 2013 10:43, Pierre-Yves David <pierre-yves.david at> wrote:
> > On Thu, Jun 13, 2013 at 10:34:27AM -0400, Jordi Gutiérrez Hermoso wrote:
> >> Would it make sense that when doing "hg push -r foo" that foo become a
> >> draft or public phase if it was originally secret?
> >>
> >> I find it odd that hg push -r foo won't push foo, even if I just
> >> explicitly requested it, just because foo is secret.
> >
> > Foo may be a lot of things, a branch name, a bookmark, a revset or an explicite hash.
> >
> > Making the distinction between those case is non trivial and maybe a bad idea.
> >
> > I'm not sure to be able to define a proper definition for "explicitly requested".
> I'm not sure any of these cases need to be explicit. If you use -r,
> you mean an explicit revision. If you use -b, you mean a particular
> named branch. With -r, secret commits should be pushed, but not with
> -b.
> > Is this special case special enough?
> I am trying to figure out how to effectively use secret commits. If I
> change my default phase to secret, then I have to manually make
> everything draft before I can push it. I thought explicitly requesting
> commits to push would make sense instead of "hg phase -d foo". Perhaps
> the hypothetical "hg commit --secret" command would be better.

I wouldn't want push to ever push secret commits, as the whole reason
I use them is for things I don't want to accidentally foist on the
world yet.

> - Jordi G. H.
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at

More information about the Mercurial-devel mailing list