[PATCH STABLE] clone: show status "updating to bookmark @"

Adrian Buehlmann adrian at cadifra.com
Sat Oct 27 08:34:18 CDT 2012

On 2012-10-27 09:39, Thomas Arendsen Hein wrote:
>> as we have a behavior change anyway.
> It is a bugfix to adjust the actions of Mercurial to the expected
> behaviour. Or are you talking about updating to the @ bookmark which
> was introduced before 2.4-rc?

The behavior change I'm talking about is that Mercurial will no longer
update to the default branch but instead to where the @ bookmark is (iff
that bookmark exists). This means, that when the @ bookmark is, for
example, on branch 'stable', you will have a branch 'stable' checked out
by default.

Pre-2.4 Mercurial checks out the default branch in that case.

I think this is a significant change of behavior and it will be released
with 2.4 on Nov 1st.

Now you can argue that we are on code freeze, but this patch only
changes a status message, so I think this is acceptable, even during the
code freeze. FWIW, you added a new status yourself with 52c7e171e355
(IIRC without discussion).

If we wait with changing this to *after* 2.4 has been released, it will
be even harder to justify changing the status messages, as we will then
have missed the chance to adjust the status messages _together_ with the
behavior change (this is for those folks who might parse status output,
a point you raised yourself).

One of my original motives why I introduced the old 'updating to branch
X' message was that I think it was (and still is) good to know *what*
Mercurial is doing while you sit in front of the terminal hearing the
harddisk working, waiting for the clone command to complete. Before I
introduced the 'updating to branch X' message, users (which included me
specifically) were waiting for the update to complete, without knowing
*what* Mercurial is doing in that phase. The update might take a long
time for big repositories. It's also nice to know when the wire transfer
is complete and the local-only update part of the clone operation has
begun, without having to specify --verbose or --debug.

Now, with this drastic behavior change of what is checked out on clone
by default, I think it makes sense for the user to know that the @
bookmark overrided the good old default algorithm which checked out the
default branch by default.

More information about the Mercurial-devel mailing list