The E852 Source code is managed by CVS. The CVS repository is physically located on lemond.phy.bnl.gov:/usr/people/e852/source/CVS I am using CVS Version 1.10 (see "cvs --version"). To access the E852 Repository, set CVSROOT would normally be set to: /home/lemond/e852/source/CVS If you do not know what CVSROOT is, keep reading. To access the E852 CVS Repository from outside of BNL, you need to: a) being able to "ssh" to any BNL computer that can access /home/lemond/e852/source/CVS. Recommended BNL computers are physgi00.phy.bnl.gov and a2.phy.bnl.gov. Use of lemond.phy.bnl.gov is discouraged. b) set CVS_RSH to "ssh" c) set CVSROOT to "physgi00.phy.bnl.gov:/home/lemond/e852/source/CVS" or "a2.phy.bnl.gov:/home/lemond/e852/source/CVS". d) that done, the normal CVS commands (cvs checkout, cvs update, cvs commit) should work. Small CVS tutorial: 1. (no longer available?) Nathan Stone of STAR wrote a nice "advanced" tutorial at http://www.rhic.bnl.gov/STAR/html/comp_l/onl/CVSTutorial.html 2. The CVSROOT environment variable is used by the CVS commands to find the CVS repositiry. Instead of setting CVSROOT you can specify the repository on the CVS command line: "cvs -d a2.phy.bnl.gov:/home/lemond/e852/source/CVS update" 3. How CVS is different from SCCS - there is no equivalent of "sccs edit" and "sccs delget". You cannot reserve files while you edit them. Instead you checkout your own private copy of the files (with "cvs checkout" or "cvs update"), edit your local copies and then "commit" them to the repository (with "cvs commit"). If two people edit the same file at the same time and then try to commit their changes, the first person's commit will succeed and the second's will fail until he does "cvs update" to merge the first person's changes into his local copy. Only then the second person can commit his changes. 4. Most useful CVS commands: - cvs --help cvs --help-commands list CVS command line switches and available commands. - man cvs - cvs checkout (module name) will extract all the files for the given module from CVS. You use this command the first time you access CVS. Afterwards you should use "cvs update" - cvs -n update will compare your local copies of the files to the repository and report any changes (local copy changed, copy in repository changed, etc...). - cvs update will update your local copies of the files with the changes in the repository. If files in repository have changed, these changes will be merged into your local copies. - cvs commit puts your local changes back into CVS. - cvs annotate (filename) similar to "sccs print": print each line of the given file, showing when that line was last modified. 5. What CVS modules exist? To get a list of availble CVS modules, checkout the module "CVSROOT" and look in the file CVSROOT/modules. 6. How to add a module? Checkout, edit and commit the file "CVSROOT/modules". See instructions in the file on how to edit it. Then use "cvs import" to populate the new module with files. Make sure you read the "cvs import" instruction because this command is very quirky. Make sure you run "cvs import" in the directory that contains the files (and subdirectories) you intend to import.
end file updated: KO 2000-Dec-12 original: KO 1998-July-25