[PATCH] subrepos: add ui.recursesubrepos option

Matt Mackall mpm at selenic.com
Fri Sep 23 16:13:45 CDT 2011


On Fri, 2011-09-23 at 14:30 +0200, Martin Geisler wrote:
> Martin Geisler <mg at aragost.com> writes:
> 
> > Matt Mackall <mpm at selenic.com> writes:
> >
> >> On Thu, 2011-09-22 at 16:14 +0200, Martin Geisler wrote:
> >>> # HG changeset patch
> >>> # User Martin Geisler <mg at aragost.com>
> >>> # Date 1308244309 -7200
> >>> # Node ID 558d09d8ff5b3ab6f812530e0e77c8b54aa397ec
> >>> # Parent  91dc8878f88857f01b86a99ad047400704b5fd7e
> >>> subrepos: add ui.recursesubrepos option
> >>> 
> >>> This option can be used to make commit, status, diff consistent with
> >>> each other. If unset, the current behavior is kept unchanged:
> >>
> >>>           | recurses   | recurses
> >>>           | by default | with --subrepos
> >>>   --------+------------+----------------
> >>>   commit: | True       | n/a
> >>>   status: | False      | True
> >>>   diff:   | False      | True
> >>> 
> >>> If ui.recursesubrepos is set to a boolean B, then we have:
> >>> 
> >>>           | recurses   | recurses
> >>>           | by default | with --subrepos
> >>>   --------+------------+----------------
> >>>   commit: | B          | True
> >>>   status: | B          | True
> >>>   diff:   | B          | True
> >>
> >> I'm sorry, but this approach is still[1][2][3] not ok.
> >
> > Can I defuse all this by saying that HGPLAIN should reset this?
> >
> > It's not part of the patch, but it was never my intention to affect
> > tools that parse the output.
> >
> > Actually, I don't really care about tools at all. All I care about is
> > to let my client deploy a hgrc file that makes Mercurial consistent
> > for their users. From what they tell me, their users find the current
> > situation confusing.
> 
> I talked with my client, and while he understands you concern about
> breaking the contract by letting status show files that cannot be added,
> he points out that we're currently breaking another contract when commit
> will commit files that status wont report.

Presumably there's an idiomatic translation of "two wrongs don't make a
right" that will serve to illustrate why that's irrelevant.

Hopefully you then told your client my grand plan of how to make subrepo
behavior natural and transparent that I've been trying to explain to you
for over a year now, right?

-- 
Mathematics is the supreme nostalgia of our time.




More information about the Mercurial-devel mailing list