Forum archive 2000-2006

Michael Gage - How to use CVS with WeBWorK2

Michael Gage - How to use CVS with WeBWorK2

by Arnold Pizer -
Number of replies: 0
inactiveTopicHow to use CVS with WeBWorK2 topic started 5/15/2003; 10:28:10 AM
last post 5/15/2003; 10:28:10 AM
userMichael Gage - How to use CVS with WeBWorK2  blueArrow
5/15/2003; 10:28:10 AM (reads: 3211, responses: 0)

June 17, 2003

The CVS server has just been moved to a new location. These notes have been updated to reflect the change.

There is a newer version of this document at$1599

HowTo use the CVS with WeBWorK2 (mod_perl version)

Setting up a local version of WeBWorK2 (WeBWorK mod-perl) using CVS

This is identical to setting up WeBWorK1.8 (see Anonymous CVS) except for the checkout command at the end.

Set the address of the CVS server
Instructions for Unix (tcsh, csh shells)
% setenv CVSROOT
or instructions for Unix (bash shell)
% export
Login to CVS server -- this is no longer necessary when using the secure shell access method (i.e. using :ext: instead of :pserver:)
% cvs login
(Logginging in to
CVS password:
Just enter a return at the password prompt. The anonymous login does not require a password.

An error message at this point likely means that you have not defined CVSROOT correctly in the first step.

Next move to a directory where you wish to create the webwork directory:
% cd ~/test
This next command creates a directory called "webwork-modperl" and downloads files from the CVS server to the local repository
% cvs checkout -r rel-2-0-pr1 webwork-modperl
To check out a version of the repository which has all of the latest bleeding edge bugs use:
% cvs checkout webwork-modperl

Initializing the local version of WeBWorK2

See Migrating to WeBWorK2.0, ver 2

Updating the local WeBWorK2 version

To update all of the files in the webwork system folder:
cd ~/test/webwork/system
cvs update -d
That's it. If you want to see what files will be changed, without changing the files use this command:
cvs -n update -d
The computer will list all of the files which will be changed if you actually run the update
The -d flag allows new directories to be created. If only minor updates are expected you, or for some reason you don't want the directory structure changed in the local repository, then you can omit the -d.
The files which will be changed are preceeded by a letter. The letters stand for:
M  The local copy of the file has been modified, but the CVS server's copy has not been changed. This indicates that you have made some local modifications to this file.
U   A copy of this file will be downloaded from the CVS server
P   The local copy of this file will be "patched" so that it agrees with the copy on the CVS server. This has the same affect as the U letter, but it is faster, since only portions of the file actually need to be downloaded in order to bring the local file up to date.
C   There is a conflict between changes which you have made locally and changes which have been made on the CVS server file. If you update this file you will need to examine it with a text editor in order to reconcile the two different versions. (Search for the characters "======" -- they indicate a region where changes have been made in both files.)

Files which have not been modified will not be listed.

If you wanted to modify only the files in the courseScripts directory (something which I do quite often), do this:
cd ~/test/webwork/system/courseScripts
cvs update
Remember to update global.conf by hand whenever global.conf.dist.

<| Post or View Comments |>