Hi Joe,

I do not know for the fact about the plans to remove locking (there were,
however, talks about removing 'cvs admin' all together), but I know for the
fact, that locking does not work on branches at all. Here is the scenario:

cvs tag -b MBR foo
cvs up -r MBR foo
change foo
cvs ci -m 'first revision on branch MBR' foo
cvs admin -l foo # note, that the root of the branch MBR got locked, not the
tip

login as another user,
cvs co -r MBR foo       # get the tip
change foo
cvs ci -m 'add a version to the tip' foo # no problems with checkin, the
root of the branch is still locked by the first user.

Of course, if the second user was using 'cvs admin -l' too, the lock would
be denied, but because of the root of the branch being locked, ALL branches
stemming from the same revision would be locked as well.

If I am working on two branches with a common root, and I used 'cvs admin
-l' on both, I believe, that the lock will be freed up after the very first
checkin, which will leave my second branch unlocked... brrr.

Do not use locks with CVS! But you already knew this :-)


Eugene.

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: Monday, August 07, 2000 9:48 AM
To: [EMAIL PROTECTED]
Subject: exclusive locks (again, I know)


I've been watching the exchanges here about this, and while I don't want
to start any wars, I'd like to get a clarification about something.

As I understand the CVS manual, the only way to have exclusive locks on
checkout is to combine cvs checkout with cvs admin (there's a race
condition there, right?). From what I've been reading (not necessarily
just the manual), my impression is that this facility (exclusive
checkout) may go away in the future. I'd like to know if that's correct.

We're using Sniff on top of RCS right now, and I'd like to move us to
CVS in order to facilitate checkin/checkout from lab machines which
don't have Sniff installed. However, we want an exclusive checkout
model.

I really don't want to debate whether that's a good or bad decision, I'd
really just like to know if a) my understanding about this is right, and
2) it's supportable in the long term without capturing and maintaining
some version of CVS internally.

I'd appreciate your indulgence on this. I've been reading documentation
and playing with it for a few days now, but I'm not sure if I'm even
asking the question correctly.

Thanks

Joe

Reply via email to