For example, at APS/ASD the command should show:echo $CVSROOT
At APS all <top> applications are stored under $CVSROOT/iocsys. Ask your EPICS system manager about the use of CVS at your site./usr/local/iocapps/cvsroot
A useful option for cvs is:
This will execute any command to demonstrate what it would do without actually making any changes to the current directory or the repository.cvs -n <command>
gives overall cvs help.cvs help
This will retrieve the latest version of iocsys/<top> into <anywhere>/iocsys/<top>cd <anywhere> cvs checkout iocsys/<top>
cvs edit <filename>
cvs unedit <filename>
places a directory or file under CVS control. This command must be given for each directory and file to be added to the repository. A subsequent commit command will also be required.cvs add <filename>
removes the specified file from the repository. The file is not actually deleted but is moved to the "attic". Thus previous versions can still be retrieved.cvs rm <filename>
compares the working copy of the file with the latest version in the repository.cvs diff <filename>
The diff command has options that allow you to see the differences between any two versions committed to the repository.
brings the development area into sync with the latest versions committed to the repository. A message starting with U is given for each file or directory that is updated. If the message starts with M the file named has been modified in this directory. A message starting with the letter C means that a conflict was found between the working file and a change in the repository. Conflicts must be resolved manually (edit the file and look for regions bounded by <<<<<< ====== and >>>>>> characters).cvs update -d <filename>
The option -d means add any new subdirectories that have been created in the repository.
commits changes to the repository. You are asked for comments via your favorite editor.cvs commit <filename>
shows the status of the file. The -v option shows all tag information for the file.cvs status <filename>
displays the commit messages for all versions of the specified file.cvs log <filename>
is used by the Application System Manager to tag official application releases.cvs tag <official release name>
cvs import -m "Creating" iocsys/newapp newapp start
The -P options to checkout and update cause CVS to remove any empty directories. Update's -d option tells it to create any directories that have been added to the repository since the last update. The -kv flags to export cause it to replace any RCS keywords (e.g. $Id$) with strings which will not be changed if the exported source code is later imported into a different repository.checkout -P update -d -P export -kv