On 15.01.2014 19:28, Ben Reser wrote: > On 1/15/14, 10:22 AM, Kyle Sluder wrote: >> To be clear, this isn't implying that `svn lock` of a directory will work >> over DAV, correct? Just that the repository supports storing the fact that >> some other DAV client has LOCKed a directory, and the DAV protocol layer >> supports communicating that information back to the `svn` client? > Not even that much is done. I meant that the DAV RFC includes details on how > locks on collections (DAV's name for directories) should work. DAV handles > the > inheritance by supporting a depth parameter for the lock. > > Basic model for how looking should work that specifies some behavior related > to > depth-infinity locks: > http://webdav.org/specs/rfc4918.html#lock-model > > Specific section on directory locks. > http://webdav.org/specs/rfc4918.html#write.locks.and.collections > > One problem that may arise here is we may not like how DAV implemented > directory locks. If not then we have the issue of our LOCK method support not > really being compatible with DAV.
We certainly have to hack thinks to map non-recursive directory locks to any reasonable locking model in Subversion. This is because of Subversion's bubble-up storage model, in which the revisions of all parent directories of a change are updated by a commit. Inheritance is also an interesting topic, and the fact that Subversion allows locks to be created on nonexistent paths (and that our locks don't record the recursive vs. non-recursive bit) would also make for interesting side effects. -- Brane -- Branko Čibej | Director of Subversion WANdisco // Non-Stop Data e. br...@wandisco.com