General GamesCrafters CVS Information
What is CVS?
- CVS allows GamesCrafters to access, track, change, and update files.
- You can read the CVS manual for details on the many features of CVS.
How to access the GamesCrafters CVS repository
Create a SourceForge account and register as a GamesCrafters developer
- Go to the SourceForge website @ http://www.sourceforge.net.
- Setup a new user account (New User via SSL).
- Find the GamesCrafters project site @ http://sourceforge.net/projects/gamescrafters/.
- Email a Project Admin and ask to be added to the Project Admin or Developer List. Include your SourceForge login in the email.
Team leads, Architecture team members, and Dan will be members of the Project Admin group. Other GamesCrafters will be members of the Developers group.
Setup CVS on your machine
Using CVS for the first time
Once you are listed as a GamesCrafters project developer, log into both shell.sf.net and cvs.sf.net using ssh.
This will setup your home directory. You only need to do this once.
You should wait 10 minutes after entering your CVS public key on the SourceForge website before attempting this step;
otherwise, you may be prompted for your password.
If you are unable to login, make sure your username is listed as a developer or project admin in the GamesCrafters project.
There is a temporary issue with SourceForge that may prevent you from accessing an account for the first time via SSH.
As a workaround, try changing your SourceForge password via Account Options.
(You can change your password to the same password.)
Example:
ssh username@shell.sf.net
ssh username@cvs.sf.net
- Rename your existing gamesman directory so it won't be overwritten.
Example:
% mv gamesman/ gamesman3/
Alternatively, you can delete your old gamesman directory if you have no futher use for it.
This will help you avoid quota issues on your inst account.
% unalias rm (only if on inst)
% rm -rf gamesman/
- Checkout the current version of the code from CVS by executing the command:
cvs co gamesman
If you are prompted for a password to your SourceForge account, you may need to wait about 10 minutes after you enter your SSH public key on the SourceForge website.
Email the person listed on the bottom of this page for help in fixing the problem.
If you are connecting from home, you may need to run Exceed for CVS to work properly.
Using CVS
Some important commands
cvs update [file1] [file2] ...
- Retrieves the latest file versions from the CVS repository.
If you omit the file argument(s), all files in this directory and all subdirectories will be updated.
To ensure you update all files, you should execute this command from the top-level directory (i.e. gamesman).
cvs commit [file1] [file2] ...
- Submits your changed files to the CVS repository.
If you omit the file argument(s), all changed files in this directory and all subdirectories will be submitted.
To ensure you submit all changed files, you should execute this command from the top-level directory (i.e. gamesman).
cvs add file
- Adds a file to the CVS repository
cvs remove file
- Removes a file from the CVS repository
cvs diff [file]
- Show the differences between files in the working directory and the repository.
The optional file argument specifies a single file to diff.
cvs --help
- Get help with CVS commands
CVS Do's and Don'ts
- Don't cancel your CVS commits or checkouts with Control-C. CVS is not
a database. It does not have transactions. You could irrevocably screw
up your CVS repository if you cancel your CVS operations in the middle.
- Don't use empty log messages when you commit files. Other GamesCrafters need
to be able to see the code changes you make.
- Do make an effort to check in your code as often as possible. However, don't
check in anything that doesn't compile.
- If you add a file to your working directory, be sure to use cvs add [file] so that other GamesCrafters can use the file too.
- Don't add executables to the repository unless you really want to save it. Executables should be compilable from the checked-in source code.
Adding your game to CVS
Once you have a game that compiles, you can add it to the CVS repository.
Use cvs add filename to add the following files:
- src/mgame.c - The C source file
- tcl/mgame.tcl - The Tcl/Tk source file (if any)
- bin/Xmgame - The script to start the Tcl/Tk version of your game (if any)
- bitmaps/game100.gif - A 100x100 screenshot of your game (if any)
Also, make sure the following files are updated to reflect the addition of your game:
- src/Makefile.in
- bin/XGamesman.in (if you added a Tcl/Tk version)
Finally, cd to the gamesman directory and cvs commit
to submit your new and updated files to the repository.
Additional help
For more assistance, consult the SourceForge Site Docs or email a project admin (probably the person listed below).
Confused by these instructions? Email your team lead!
This page was last updated on .