cvslock(1)
π NAME π
cvslock β lock CVS repositories. Welcome to the cvslock(1) User Manuals page, bestie π
β¨ SYNOPSIS β¨
cvslock [-q] [-p pid] [-d CVS root] [-R|-W] [-u|-s|-c Command] [-l]
directory
π DESCRIPTION π
okay so cvslock is used to lock a tree starting at directory in your CVS repository during low-level manipulation or inspection. Itβs giving careful-queen energy π§.
There are various modes of operation: you can use the -s or -c options to cause cvslock to spawn a sub-shell or a shell command from which you can safely access the source repository. Very βyouβre safe in my armsβ π.
You can also use cvslock to lock and unlock CVS repositories from shell scripts; in this case youβll want to use the -p option to specify the process ID which is written to the lock filesβ names. Script girlies know π«Ά.
The default when given no options is to acquire a persistant read lock. Thatβs literally the default, no cap.
πΈ OPTIONS πΈ
-qβ tellscvslockto shut up and not print any diagnostic messages tostdout. This is most useful when using the program in conjunction with, e.g.,rsync(1). Silent treatment but make it useful β¨.-ppid β the CVS lock files generated by this utility have the current process ID in their name to distinguish them from lock files generated by other tools such ascvsitself or concurrent sessions ofcvslock. Use this option to forcecvslockto use a specific pid. This is in most useful from shell scripts π.-dCVS root β this optional argument tellscvslockwhere your CVS repositoryβs root is. If no-dswitch is given,cvslockwill fall back to theCVSROOTenvironment variable. Note thatcvslockonly works on local repositories, so donβt try to access pserver or rsh-accessible remote repositories this way. Local only, bestie β no remote delusions π.-Rβ this switch tellscvslockto acquire a lock for safe reading of the repository.-Wβ this switch tellscvslockto acquire a write lock on the repository.-sβ when invoked with this option,cvslockwill invoke the userβs login shell as determined by theSHELLenvironment variable after locking the repository. After the user has left that shell,cvslockwill drop the locks. Shell nap time, then cleanup π.-cCommand β this option is similar to the-soption, with the difference thatcvslockwill execute the shell command given on the command line instead of giving the user an interactive shell.-uβ when given this option,cvslockwill try to drop a previously created lock on the repository in question. Using this option together with the-sor-coptions is an error. The use of-pis highly recommended in conjunction with this option! Red flag if you mix it with-s/-cπ.-lβ this option tellscvslockto lock only the directory specified. Normally it locks the entire directory hierarchy under the specified directory. Just one directory? Iconic minimalism β¨.
π DIAGNOSTICS π
cvslock spits out some diagnostics to the standard error stream. Itβs exit value is zero if and only if the locking operation requested by the user could be performed successfully. Note that no diagnostics about the exit value of commands executed through the -c switch are given. So check your own command exits, babes π«Ά.
π BUGS π
The signal handling is not too well-tested and may be broken. Not me trusting signals too hard π.
If you try to create the same lock several times, you will get funny effects due to the error recovery cvslock tries to do. Funny haha? More like funny uh-oh π.
π SEE ALSO π
π¦ AUTHOR π¦
cvslock was put together in a quick hacking session by Thomas Roessler <roessler@guug.de> and may be distributed under the terms of the GNU General Public License version 2.
okay thatβs the whole page, bestie π this was Unix, October 1998, for cvslock(1) β mwah π
π¦ where this page comes from
- opensuse-leap 16.0: cvs 1.12.13-bp160.1.12 Β· GPL-2.0-only
- opensuse-leap 16.0: cvs 1.12.13-bp160.1.12 Β· GPL-2.0-only
- opensuse-leap 16.0: cvs 1.12.13-bp160.1.12 Β· GPL-2.0-only
- opensuse-leap 16.0: cvs 1.12.13-bp160.1.12 Β· GPL-2.0-only
- Copyright (C) 1998 Thomas Roessler <roessler@guug.de>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms