LSC/Virgo Web Portal

Table of contents

  1. The ligovirgo CVS archive
  2. Etiquette
  3. Getting login access
  4. Accessing CVS repository
    1. Checking out a single module
    2. Checking out the whole ligovirgo repository
  5. Making changes and committing them to the CVS archive
  6. Updating your copy with changes made by another developer
  7. Adding postscript or pdf figures to the archive
  8. Adding a new file

The LSC/Virgo CVS archive

We use CVS -- Concurrent Version-control System -- as a collaborative code development and document control system. It is a tool to allow multiple developers to manipulate the same files, merging differences and identifying conflicts between changes if they arise.

The LSC/Virgo CVS archive is structured as follows:

Repository Name:  ligovirgo
                     |---->portal      (Web portal   module)
                     |---->cbc         (CBC group    module)
                     |---->dac         (DAC          module)
                     |
		     |---->

The viewcvs web interface is a good way to get a feel for this structure. The steps below explain how to use CVS for collaboration.

Etiquette

We operate the CVS as an open development environment in which we rely on collaborators not to do deliberate damage. This honor system has worked well up to now and we hope it will continue.

Some basic rules about checking in code:

Getting login access

If you already have a login and passwd, go to the next section. If you want access to the lscsoft CVS repository, please fill out and submit this form. Javascript must be enabled for this form to work.

Accessing the CVS repository

If you have a ligovirgo CVS login, change anonymous@gravity.phys.uwm.edu to your_user_name@gravity.phys.uwm.edu in the environment variables below.

export LIGOVIRGOPREFIX=${HOME}/ligovirgocvs # <--- Change this as appropriate
export LIGOVIRGOCVS=":pserver:anonymous@gravity.phys.uwm.edu:/usr/local/cvs/ligovirgo"

In the following commands, remember \verb+LSCSOFTPREFIX+ is the absolute directory path where you want to install your modules from ligovirgo archive. If \verb+LSCSOFTPREFIX+ does not exist, you must create it:

    mkdir -p $LIGOVIRGOPREFIX
Then go to the directory into which you wish to put the modules
  cd $LIGOVIRGOPREFIX/
  cvs -d $LIGOVIRGOCVS login

Checking out a single module

Now, you can check out any one of the modules individually, for example to get the compact binary group module

  cvs -d $LIGOVIRGOCVS checkout cbc

Checking out the whole ligovirgo repository

Alternatively, you can check out the whole repository as

  cvs -d $LIGOVIRGOCVS checkout ligovirgo

Making changes and committing them to the CVS archive

Once you've made your changes, you want to commit the modified file to the CVS repository. To do this, commit the modified file to the CVS repository:

  cvs commit myfile.tex
You will be asked to provide a comment for the change log. This does not need to be detailed, but should give some indication of the work you were doing.

Updating your copy with changes made by another developer

To update your entire directory simply type:
            
  cvs update -Ad
from the ligovirgo directory. This will download and merge changes into the files from the repository. If you have been working on a local copy and your changes conflict with those made by the other person, you will receive a warning and will need to manually edit the file to remove the conflicts. It is usually good practice to update your local copy of the archive before working on the files; this avoids conflicts. It is also good practice to commit changes reasonably often.

Adding postscript, pdf or other binary formats to the archive

To add a postscript or pdf figure to the archive, first place it in the appropriate directory. Suppose the filename is figure.ps. Type:
  cvs add -kb figure.ps
  cvs commit figure.ps
The -kb flags are very important. They prevent certain substitutions from being done by CVS. If you commit postscript or PDF without these options, let the project maintainer know and we'll get it fixed.

Adding a new file

To add a file to the archive, first place it in the appropriate directory. For convenience, let the filename be myfile.m. Type:
  cvs add myfile.m
  cvs commit myfile.m