GYRO CVS
Existing packages (current)
- gyro-7.4cvs
- GYRO source code.
- tgyro-0.10cvs
- TGYRO source code.
- neo-0.2cvs
- NEO source code
- tglf-0.1cvs
- TGLF source code
- doc-0.1
- GYRO Technical Guide (latex).
NOTE Below, gyro-x will stand for gyro-7.4cvs
Setup
In .bashrc (or equivalent), set
export CVSROOT=username@hydra.gat.com:/c/cvsroot/gyro_repo
export CVS_RSH=ssh
where username is your user name on hydra. If you do not have a hydra account you will need to get one.
CVS from trusted GA system
If you are on a trusted GA system, you should do two more things:
First, add that system to .rhosts on hydra.gat.com:
$ cat ~/.rhosts
banach.gat.com username
drop.gat.com username
and then change the communication protocol to rsh:
export CVS_RSH=rsh
These changes will enable you to avoid repeated typing of your password.
Repository location
The current GYRO repository resides at hydra.gat.com:
hydra:/c/cvsroot/gyro_repo
Currently two CVS packages are available: one for GYRO sources and one for the technical manual:
hydra:/c/cvsroot>ls -l gyro_repo/
total 4
drwxrwxr-x 3 candy users 1000 Jan 31 12:45 CVSROOT
drwxrwxr-x 3 candy users 376 Feb 12 15:05 doc-0.1
drwxrwxr-x 20 candy users 648 Feb 11 23:11 gyro-x
Checkout and update
The checkout process copies CVS config files and is suitable for editing via CVS.
$ cvs co gyro-x
After making changes to gyro-x, AND carefully testing for correctness, you can commit all changed files by typing
$ cvs commit
or only a subset of files via
$ cvs commit file_1 file_2 ... file_n
You can check for recent updates using update:
$ cvs -n -q update
cvs update produces output to the terminal with the following meanings:
| Return Code |
Description |
| U file |
indicates that file was brought up to date with the repository or that it exists in the repository but not in your work space |
| P file |
does exactly as above but uses the "patch" method |
| M file |
means the file was modified in your work space. Any additional changes from the repository were merged in successfully |
| C file |
means a merge is necessary because both the your copy and the repository have changed but there is a conflict between the changes |
| ? file |
means the file exists in your work space but not on the repository |
You can attempt to merge updates by typing
$ cvs update -dP
where the flags ensure that new directories are added and deleted ones are pruned respectively.
Add and remove
To add gyro-x/newfile to the repository, type
$ cvs add gyro-x/newfile
$ cvs commit
To remove gyro-x/newfile, type
$ rm gyro-x/newfile
$ cvs remove gyro-x/newfile
$ cvs commit
Tagging changes within a release
$ cvs rtag release_tag gyro-x
Here, release_tag is an identifier that ought to denote a particular significant milestone -- for example, cray_optimized. Developers should tag after large modifications.
To view existing tags, type
$ cvs status -v gyro-x/VERSION
===================================================================
File: VERSION Status: Up-to-date
Working revision: 1.1.1.1
Repository revision: 1.1.1.1 /c/cvsroot/gyro_repo/gyro-x/VERSION,v
Sticky Tag: (none)
Sticky Date: (none)
Sticky Options: (none)
Existing Tags:
new_profile_scheme (revision: 1.1.1.1)
cray_optimized (revision: 1.1.1.1)
initial_release (branch: 1.1.1)
Exporting current version
The export process does not copy CVS config files. Use this for releasing GYRO to non-developers.
$ cvs export -DNOW -d gyro-exported gyro-x
|