| STAR Computing | Tutorials main page |
| Using CVS in STAR | |
| Offline computing tutorial | Maintained by T. Wenaus |
STAR uses CVS, the Concurrent Version control System, to manage the STAR software repositories. Offline and online software are in separate repositories as follows:
| STAR offline repository | /afs/rhic/star/packages/repository |
| RHIC common software repository | /afs/rhic/common/CVSREP |
| STAR online repository | /star/onl/cvs/ROOT (visible from BNL machines only) |
Check out this brief summary of the CVS commands most important to us.
Print out this very useful CVS reference card from Cyclic Software. Use landscape and 'fit to page' when you print it.
One should never ever go to, browse in, touch, edit, or otherwise interfere with a CVS repository itself. Use the web browser, do a CVS checkout of the software of interest, or browse the current reference copy (in $STAR_PATH/dev for the offline software).
Repository browser: this is a web-based browser that allows you to browse the entire offline and online CVS repository trees and access all files and their revision histories. You can also examine the differences between revisions. It also provides links to a history of recent commits and commits by user.Cross-referenced source browser and searcher: Browse STAR and third party source code, with hyperlinked cross references and the ability to search for all usages of symbols, files, and general text
CVS browser: another one; slower. Rooted in pams/ at present so you can't examine the entire repository.
CVS commit log archive: an email list archive (for the STARCVS-L list) containing the commit logs for the entire offline repository
CVS commit log search: this is a search form for scanning CVS commit logs from any part of the repository over any time period, for all users or for a particular user.
Hierarchical, directory by directory responsibility for the contents of the offline CVS repository is given in the CVS responsibility list, the
availfile at the top level of the repository (online has one too). In order for a person to have commit rights for a portion of the repository, they must be on this list at or above the level in the hierarchy at which they wish to commit.
Consult the online computing web pages for information on the online repository.
The STAR offline CVS repository employs an access control mechanism that allows only authorized accounts to modify parts of the hierarchy. Authorization control is for commits only; everyone can check out any part of the repository.If you get a message Insufficient karma (yes, it's a weird message) it's an indication you do not have write access to the area you're trying to commit to.
The access list is
$CVSROOT/CVSROOT/avail. A line likeavail |ullrich,wenaus |StRoot/StAnalysisMakermeans that ullrich and wenaus can write to any directory under StRoot/StAnalysisMaker.Note that you will not be able to commit a brand new package to the repository (unless you have a lot of karma) because there'll be no entry giving you access to the area you're trying to create. You can create subdirectories under directories you have access to.
You should ask Lidia, Yuri or Torre when you need access changes or you need a new area to be created.