Re: [RFC] Inheritable Properties Branch: Ready for Review
From: Julian Foad <julianfoad_at_btopenworld.com>
Date: Thu, 13 Sep 2012 19:59:21 +0100 (BST)
Paul Burba wrote:
OK, thanks for explaining. I think I follow.
The difference with what you have just explained pertains mainly to a mixed-rev WC. Perhaps we could draw it like this, where the intention is to show, for every node, the chain of other nodes that this node inherits properties from:
REPOSITORY WC-BASE WC-ACTUAL
parent (O) (O) (O)
"(O)" just means a node; "(@10)" means a node from the specified revision.
Does that diagram look right to you?
(Why am I spending considerable effort on trying to draw a diagram to represent the semantics? Because I think it is a very powerful means of communication.)
I'm seeing something in the above diagram that may be troubling. It says that, in a mixed-rev WC, if I have no local mods, nevertheless the full set of properties (including inherited props) in effect on an ACTUAL node is different from the full set of props that are in effect on the correcponding BASE node. In other words, a diff that includes inherited props would show a difference even though (in another sense) there are no local mods. That seems unintuitive to me. How about you?
>> (If at this point you're wondering what other picture I could possibly
I see; I hadn't realized that 'default WC inheritance' referred to the inheritance that is seen when a revision specifier is defaulted on some command. Can we say "'actual' tree inheritance" or "'actual' props inheritance" instead of "default inheritance"?
As a meta-observation, it is often useful to define behaviour in terms of tree states and such (a model of the WC, a model of the repository), and to mention command-line parameters only in illustrations and concrete examples.
- Julian
|
This is an archived mail posted to the Subversion Dev mailing list.
This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.