Skip to content.
CCB > CcbResources > CCBResourcesCVSHowTo

We have migrated the CCB CVS repository to Subversion (Starting January 2007)

Accessing the CCB CVS Repository

In a nutshell

  • Create an account
    • If you don't have one yet, you must create a CURS account at http://www.loni.ucla.edu/LONI_Login.jsp. You need to have a CURS account in order to read from/write to the CVS server. NOTE: There is no anonymous access to the CCB branch of our server.
    • Send the email address you used to create your CURS account (your CURS email address) in the body of a one-line message to ccbcvs@loni.ucla.edu. Use account as the subject of your message so to have it automatically processed. The CVS server is able to grant read/write permission only to those accounts within the CURS database.
    • You will receive a reply message confirming you have been granted access
  • Access the CVS server
    • Accessing the Web-based SmartCVS
    • Access the CVS server using your CURS email address and password created above. Instructions on how to access the server are available below. For up-to-date information refer to this CVS@LONI web page.
    • Writing permission: If you are a developer and need writing permission (for committing your changes) for a specific project, send a message containing two lines to ccbcvs@loni.ucla.edu listing the project name and your CURS email address, each on its own line, in that order, in the body of your message. Use writer as the subject of your message so to have it automatically processed. You will be notified after you are granted writing permission.

Getting a CCB/LONI/CURS account

http://www.loni.ucla.edu/LONI_Login.jsp

Accessing the CCB Secure Web-Based CVS Repository

http://www.loni.ucla.edu/cgi-bin/cvsweb.cgi/

Accessing the CCB Secure CVS Repository

Passwords are not encrypted between a CVS client and a CVS daemon. Therefore, a secure connection is required to access a secure CVS repository outside of the CCB/LONI local subnet.

Accessing a Secure CVS Repository inside CCB/LONI

The CVS daemon can be directly accessed from the CCB/LONI local subnet on port 2402. For example:
> cvs -d :pserver:joe@cvs.loni.ucla.edu:2402/root/CCB login
will login the CVS client "joe" to the CCB/LONI CVS repository "CCB".

Accessing a Secure CVS Repository outside CCB/LONI

A secure connection is required to access the CVS daemon outside of the CCB/LONI local subnet. Before the CVS daemon can be accessed, an SSH tunnel must be established between the client computer and the LONI CVS computer. A special system user (cvs-ssh) has been created for this purpose. Type in a shell exactly as shown below:
> ssh -N -L 8000:cvs.loni.ucla.edu:2402 cvs-ssh@cvs.loni.ucla.edu
Then enter !@hss-svc when prompted for a password. This will establish the SSH tunnel. The SSH tunnel should be active although there is no further screen output. Don't kill ssh (^C) in the terminal. If the terminal is closed, the SSH tunnel will be stopped and you will not be able to read from/write to the CVS server. In another terminal, the CCB/LONI CVS daemon can be accessed using the CVS client to communicate with the local SSH port. For example:
> cvs -d :pserver:joe@localhost:8000/root/CCB login
will login "joe" to the CCB/LONI CVS repository "CCB" using the SSH tunnel.

CVS Tutorials


For the Impatient

open a shell in a unix machine at loni. create an empty directory, say ~/tmp, and then 'cd' to this directory. once in ~/tmp issue the following commands

> cvs -d :pserver:[your user login]@cvs.loni.ucla.edu:2402/root/CCB login

enter your password. if it does not accept the one you give, stop: you have a CURS problem - contact Rico. if it does, you will see a prompt.

then enter the following

> cvs -d :pserver:[your user login]@cvs.loni.ucla.edu:2402/root/CCB checkout [project_name]

you should have now a directory with the project name, ~/tmp/[project name]. 'cd' to it. now copy all your code and files into this directory. you can have as many subdirectories as you want under it. once there, and provided you are still login, enter

> cvs -d :pserver:[your user login]@cvs.loni.ucla.edu:2402/root/CCB update

this will bring your working directory in sync with the CVS repository. then issue

> cvs -d :pserver:[your user login]@cvs.loni.ucla.edu:2402/root/CCB add [your files]

followed by

> cvs -d :pserver:[your user login]@cvs.loni.ucla.edu:2402/root/CCB commit

to upload your files. at this point all files under your project directory will be uploaded to the CVS repository. you are almost done.

all you need to do now is to create a permanent working directory where you want your code to reside locally so anytime you make a change on it you can issue the commands above to upload only the modified files to the CVS repository. so create a permanent working directory and once there 'login' and 'checkout' as done above. you should have the same directory tree as your upload from ~/tmp/[project name].

lastly, to save you typing, have

setenv CVSROOT :pserver:[your user login]@cvs.loni.ucla.edu:2402/root/CCB

in your .cshrc (or equivalently in your .bashrc) so you don't have to provide the whole root domain every time you issue a cvs command (the -d flag above). also add the following in your .cshrc if not there yet:

setenv CVS_RSH ssh
setenv CVSEDITOR 'xemacs -nw' (or whatever text editor you prefer)

Grid Compilers

Installed compilers we have in the Cranium cluster