At the moment, most of the developers working on ascent are relatively new to CVS. This page is here to provide some helpful tips and guidelines to setting up CVS to work with ascent on the sourceforge servers.

Sections

  1. General Configuration
  2. Environment
  3. The CVS configuration file
  4. Handy Commands
  5. List of Modules
  6. Sourceforge Documentation

General Configuration

To access the cvs repositories at sourceforge, you will need the following:

Additionally, to work on ascent, you will need apache, php, and MySQL.
The focus of ascent is to get it working with MySQL first, with Postgres support being semi-configured and working so that it can be easily added in full at a later date.
If you would like to use PostgreSQL instead of MySQL as your development platform, that would be great, as the more compatible we are up front, the better.

While using CVS, you will need to create a working directory. I use /usr/local/cvs/sf-ascent as mine, so I will use that as the directory for this documentation. Please change any references to /usr/local/cvs/sf-ascent to whatever you have set up on your system as the working copy.


Environment

It is assumed that you are using some flavor of unix to access the cvs repository.
Whether that means linux, solaris, or even cygwin, the following should work.

There are a couple of environment variables that affect the way cvs operates.
The most important (wrt ascent anyway) are:

To access the ascent repository at sourceforge, you should set these variables as follows:

CVS_RSH=ssh
CVSROOT=your_sourceforge_username@cvs1.sourceforge.net:/cvsroot/ascent

The CVS configuration file

In addition to the environment variables discussed above, there is a configuration file you may wish to edit. It should be located in your home directory, and is named .cvsrc

This file contains settings which control the behavior of the various cvs commands. For the purposes of ascent, it may make sense to minimally include the following:

checkout -P
update -P

These options ensure that no empty directories are retrieved during checkout and update operations. This is important, because there is no way to remove directories from cvs, and if you do not have these options enabled, you will get a number of empty directories which are leftover from the old directory structure, which can be very confusing.


Handy Commands

Here are a few useful commands for starting out with cvs.
NOTE: Anything in [brackets] below is optional


List of Modules

The following modules for ascent are currently available via CVS:


Sourceforge Documentation

Here is a list of links to some of the sourceforge documentation. I personally find it not very useful, but that could just be me, so here it is, fwiw.