SLAC ESD Software Engineering Group
Stanford Linear Accelerator Center




This page describes the use of CVS for AIDA development in detail.

Contents:CVS commands for checkout and release, Importing new versions of AIDA into CVS
See also: Aida Development Cheat sheet, ESD CVS Guide, ESD CVS Cheat Sheet

CVS for regular development checkout and release

  1. To check out the whole Aida java package suite, issue this from the home directory of the development. Eg from C:\work type the following, to create a directory C:\work\edu... The same syntax exactly is used on unix too.
    > cvs checkout edu

  2. To check out the idl files:
    > cvs checkout idl
  3. To check out the test clients: 
    > cvs checkout test
  4. To check out the script files: 
    > cvs checkout common    

    No, this isn't a misprint, script is a subdirectory of common, so the script directory will be created as a subdirectory of common when common is checked out. You could just cvs checkout script, but then the script directory would be created in an immediate subdirectory of the current directory, and that is not the way it is in production. The makefiles in the script directory depend on the relative file paths to be the same where they're used as they are in production, so its wise to do a cvs checkout common when you want the script files, especially makefiles.
  5. To add a file which you have newly created in a directory you have checked out, into the cvs library. To additionally update the reference source direcory you must additionally do a "cvs update" - see below.
    > cvs add <filename> 
  6. To "release" your changes, that is, to copy your version of what you have checked out into the production cvs library. Note, this does not change the production "reference copy", that is, it won't change whats for instance under $(AIDA)/edu... To change the reference source code you must additionally to a "cvs update", see below.
    > cvs commit 
  7. To inform CVS that you no longer wish to hold a CVSed directory, ie when you have finished making changes to any of the cvsed directories you checked out (edu, idl or test), then cvs release them. Eg:
    > cvs release edu 
  8. Verify what you have checked out
    C:\dev> cvs history -ao
  9. To update the reference copy of the source code from the CVSed directories you have to do a cvs update. cvs doesn't do this automatically like CMS. The reference copies are those under package/aida/edu, package/aida/idl and package/aida/test. To do this you must log into Unix and issue one or all (depending on what you changed) of the following, you don't have to be anywhere special, as long as $AIDA and $CVSROOT are defined in your unix session.

    flora03> cvs update -dA $AIDA/edu
    flora03> cvs update -dA $AIDA/idl
    flora03> cvs update -dA $AIDA/test
    flora03> cvs update -dA $AIDA/common

Importing a new version of AIDA

The CVS import command should be used to import a new version of AIDA. Use the vendor tag "ESD" and a release tag which describes the release; previous release tags have been "newlabour" and "grenaida". Make sure that, if the development work has been done on a PC, so that the files have DOS line endings, then you use CVS from Windows too so that CVS can clean up the line-endins before putting it into AFS. If the development work has been done on Unix, then do the cvs from unix.

cd to the directory where the software you want to import is located. Ie cd to the directory that contains "edu/".On Windows this looks like: 

>cd dev\grenaida
>cvs import package/aida ESD grenaida


[Aida Home Page][SLAC Controls Software Group][ SLAC Home Page]

Author: name Greg White, 25-Jul-2001
Modified by: