Re: [RFC] Inheritable Properties Branch: Ready for Review
From: Julian Foad <julianfoad_at_btopenworld.com>
Date: Thu, 13 Sep 2012 15:47:45 +0100 (BST)
Paul Burba wrote:
> A while back I started working on a branch to implement inheritable
Hi Paul. That's great.
> Any feedback, review, questions, etc. are appreciated. If you do want
The main thing I wanted to check is the inheritance in the WC, since I didn't understand it when we wrote question-and-answer about it long ago in the Wiki. I think diagrams will make it easier.
So I tried it, and this is what I found. It's simple and it's fine; I have no issue with it, I just wanted to reach a clear statement of it.
This example assumes there is a property 'p' which is explicitly set (to different values) on the BASE version of every node shown. Also it is explicitly set (that is, modified) to some other different values on the ACTUAL version of every node shown. This table shows all the explicitly set values of the property named 'p':
PATH BASE PROPVAL ACTUAL PROPVAL
wc b1 a1
Trying it now (with 'wc' as the working directory), I see that the ACTUAL properties are inherited from the ACTUAL parent:
$ svn pl -v --show-inherited-props .
and BASE properties are inherited from the BASE parent:
$ svn pl -v -rBASE --show-inherited-props .
So we can complete the picture with arrows that show which way the properties are inherited.
wc b1 a1
Or, more simply,
wc BASE ACTUAL
And then, adding the info about what happens above the WC root:
parent dir in repo NODE
(If at this point you're wondering what other picture I could possibly have imagined, your "principle: Inheritance within the WC is within the actual tree" made me wonder if you meant something like this:
wc b1 a1
since I consider BASE nodes as well as ACTUAL nodes to be within the WC.)
So I think that's settled and we can delete my notes from the Wiki "WC Inheritance Rules" section if you agree.
This is an archived mail posted to the Subversion Dev mailing list.