CVS Access
|
The QCDOC Collaboration |
The repository is served with a patched version of CVS to allow limited access to code on branches (N.B. any version can be used on the client side). Access is via the pserver method. For security this is routed through a SSL tunnel using stunnel.
For this to work a machine on your local network should be running a stunnel process. This needs to be done by someone with root privileges (see below).
The following machines are running stunnel:
To check out the current version of the Columbia code, you need to type
$ cvs -d :pserver:username@host:2401/home/cvs/cps loginwhere username is your username at Columbia and host is your local machine from the list above. This will prompt you for your password at Columbia. After entering your password, type
$ cvs -d :pserver:username@host:2401/home/cvs/cps co -P cps++This checks out the entire codebase out into a directory called `cps++'.
If you wish, you can omit the -d flag entirely by setting the environment variable CVSROOT
$ export CVSROOT=:pserver:username@host:/home/cvs/cpsin bash, or
$ setenv CVSROOT :pserver:username@host:/home/cvs/cpsin tcsh (see the CVS manual for details).
Note that some files need to be writeable in order for the build to work. If you wish to use the read-only flag cvs -r when checking out the module, you should make these files writeable with
# stunnel -c -d 2401 -r qcdserver0.phys.columbia.edu:22401Users should not need to know about stunnel. With stunnel version 4.*, root should run
# stunnel stunnel.confwhere stunnel.conf is a file containing the stunnel parameters. I have known this file to work:
# Sample stunnel configuration file pid = stunnel.pid # Some debugging stuff debug = 7 output = stunnel.log # Use it for client mode client = yes # Service-level configuration [stunnel] accept = localhost:2401 connect = qcdserver0.phys.columbia.edu:22401debug = 7 causes an awful lot of verbose output to be written to the file stunnel.log so you might want to reduce this once you are sure everything is running correctly.