"Dale Worley" <dworley@pingtel.com> writes:
> After thinking about it some more, I suspect that the answer is this: What
> files are in a directory is *not* "the contents of the directory".
If this is true, then it is a major differenece to how the OS implements
directories in our working copies, and thus how users perceive them. This
definitely deserves a section in the book. The "traditional" definition of
a file system directory is a list of its contents, for instance inodes in
Unix like systems.
> Whether a particular file is in a particular directory is controlled by
> the existence/non-existence of the file within the revision that is
> applicable to the *file*. The information about the directory that is
> connected to *its* revision are its permissions (I think), and above all,
> its properties.
>
> Thus, committing a file addition is not a change to the containing
> directory -- it is only a change to the pathname of the file.
Hmmm -- if you add file F to directory D and this results in repository
revision R, then "svn log -rHEAD:1 D" will show you that D was changed in
revision R. So from a user perspective, it seems that the list of entries
in a directory *is* versioned with the directory.
> Thus, the containing directory need not be up-to-date. But I suspect
> that if you wanted to commit a propchange to the directory, it would have
> to be up-to-date.
If my analysis above is correct, I would be much happier if the directory
needed to be up-to-date, and thus get the "out-of-date" error like I do for
regular file changes. Just for the more uniform semantics. I now understand
that this would probably cause problems for mixed-revision working copies.
Again, I think this area is in need of a little more focus in the book, or
perhaps a FAQ.
I would like to thank you all for an inspiring discussion. :-)
Best regards,
Niels
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Wed Nov 17 10:45:17 2004