[PATCH] merge: improve error messages when aborting because of head count

Greg Ward greg-hg at gerg.ca
Tue Jun 15 12:42:00 CDT 2010


On Tue, Jun 15, 2010 at 3:27 AM, Martin Geisler <mg at aragost.com> wrote:
>>> Hmm, perhaps we should recommend "hg branches" instead?
>>
>> But that also prints out 112 branch heads, around 105 of which are
>> ancient history.  If you had said "hg branches -a", sure, that would
>> make sense.  It's not quite the same as "hg heads -t", but it's close
>> enough most of the time.
>
> You could close the heads with 'hg commit --close-branch'. That will
> remove them from 'hg heads'.

But:

  * that requires me to write a script to do ~100 artificial commits
  * it will add another big chunk of badly compressed entries to our
manifest log (no parent deltas) -- although the next run of 'hg
shrink' will workaround it
  * it will make glog, THG, et. al. have to think about drawing 100
new lines in the graph, many of which would span tens of thousands of
changesets
  * it means that, if someone for some reason wants to lookup the last
changeset on a release branch from 2004, they won't see it: instead
they will see my artificial "close this branch" changeset from 2010

Yes, I am keenly aware that my whinging was partly responsible for
Matt implementing "commit --close-branch".  I regret that, since it's
a feature I never use and I think it just complicates things
unnecessarily.  I was a whinging newbie at the time and I didn't
really understand the consequences.  Besides, the specific
implementation wasn't my idea!

(Moral: don't listen *too* closely to whinging newbies.  When they
say, "this error message is confusing", they're probably right.  On
other things... not necessarily so.)

Greg


More information about the Mercurial-devel mailing list