Karl Fogel wrote:
>Branko Čibej <brane@xbc.nu> writes:
>
>
>> 1. A lock must not create a new revision.
>>
>>
>
>Is this really a requirement? I used to think so, but now I'm not so
>sure.
>
Yes, it is.
>The two reasons I've heard so far are:
>
> 1. It causes noise in the logs and in the commit emails.
>
> But I don't buy that, because we can easily make the commit
> email script filter out revisions which only change lock states.
> The same goes for 'svn log'.
>
> 2. It "uses up" revision numbers, or makes them less meaningful.
>
> I *really* don't buy that one, heh. I mean, we have the whole
> RapidSVN project in our repository, for crying out loud --
> commits in that subtree are entirely unrelated to Subversion.
> It doesn't get much less meaningful than that :-). And similar
> arguments apply to branches and tags anyway.
>
> In general, we've already determined that one can't simply
> assume that every revision in a repository is meaningful for a
> particular line of development. One has to apply filters, and
> now we're just talking about one more filter.
>
>Revision numbers are cheap. We decided that long ago, and we've been
>behaving that way in practice ever since.
>
I don't like this kind of reasoning at all. "We can hack this and tweak
that and special-case the other," and presumably nobody will notice that
we screwed up the design yet again? We have too much tweaking and
special-casing in the code as it is. :-/
(I'm referring to your suggestion to tweak update, too.)
>I'm not saying that we definitely want locks to be versioned; just
>that some of the most common objections to versioning locks are really
>non-problems.
>
>
$ svn st
At revision 2038.
$ svn up -r 1500
....
$ svn st
Locked: foo, bar, baz
At revision 1500
Should be clear enough. If locks are versioned, you can't unlock a
revision once it's locked. you can't branch from an old revision
(populating our tags directory after the fact would have been
impossible). Extend this example to ACLs, and chaos ensues.
A lock isn't a property of a file; a lock on the file is a property of
the repository. You don't version those.
--
Brane Čibej <brane_at_xbc.nu> http://www.xbc.nu/brane/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Aug 13 20:30:21 2002