DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

(cvs.info.gz) Concurrency

Info Catalog (cvs.info.gz) Informing others (cvs.info.gz) Multiple developers (cvs.info.gz) Watches
 
 10.5 Several developers simultaneously attempting to run CVS
 ============================================================
 
 If several developers try to run CVS at the same time, one may get the
 following message:
 
      [11:43:23] waiting for bach's lock in /usr/local/cvsroot/foo
 
    CVS will try again every 30 seconds, and either continue with the
 operation or print the message again, if it still needs to wait.  If a
 lock seems to stick around for an undue amount of time, find the person
 holding the lock and ask them about the cvs command they are running.
 If they aren't running a cvs command, look in the repository directory
 mentioned in the message and remove files which they own whose names
 start with `#cvs.rfl', `#cvs.wfl', or `#cvs.lock'.
 
    Note that these locks are to protect CVS's internal data structures
 and have no relationship to the word "lock" in the sense used by
 RCS--which refers to reserved checkouts ( Multiple developers).
 
    Any number of people can be reading from a given repository at a
 time; only when someone is writing do the locks prevent other people
 from reading or writing.
 
    One might hope for the following property:
 
      If someone commits some changes in one cvs command, then an update
      by someone else will either get all the changes, or none of them.
 
 but CVS does _not_ have this property.  For example, given the files
 
      a/one.c
      a/two.c
      b/three.c
      b/four.c
 
 if someone runs
 
      cvs ci a/two.c b/three.c
 
 and someone else runs `cvs update' at the same time, the person running
 `update' might get only the change to `b/three.c' and not the change to
 `a/two.c'.
 
Info Catalog (cvs.info.gz) Informing others (cvs.info.gz) Multiple developers (cvs.info.gz) Watches
automatically generated byinfo2html