CVS Commit Access
(New page: If you are a WeBWorK developer, you can get an account on <code>devel.webwork.rochester.edu</code> to allow you commit access to CVS. Mail email@example.com for an account. ...)
Newer edit →
Revision as of 15:37, 28 February 2008
If you are a WeBWorK developer, you can get an account on
devel.webwork.rochester.edu to allow you commit access to CVS. Mail firstname.lastname@example.org for an account.
If you are doing development on
In this case, access the CVS repository locally. To check out a module from CVS:
cvs -d /webwork/cvs/repository_name checkout module_name
Replace repository_name and module_name with values from the article List of CVS repositories hosted the The WeBWorK Project.
If you are doing development on another machine
In this case, access the CVS repository over SSH.
First set the environment variable
ssh. In bash, type
export CVS_RSH=ssh. In tcsh, type
setenv CVS_RSH ssh. Since you need this variable set whenever you want to use the WeBWorK CVS repositories, you might want to add the command to your
.cshrc file (depending on your shell).
Then, to check out a module from CVS:
cvs -d :ext:email@example.com:/webwork/cvs/repository_name checkout module_name
Avoiding typing your password
When you use CVS remotely, you will have to type the password for your account on
devel every time you issue a CVS command. This can get quite annoying. To avoid this, you can set up public-key SSH authentication.
Public-key SSH authentication will allow you to make SSH connections from one computer to another without ever sending a password across the network. You generate a pair of mathematically related keys, and keep one secret, while making the other one available to the server you wish to connect to.
First, generate the key pair (on the machine from which you'll be connecting):
ssh-keygen -t dsa
the default answers will be fine at each of the prompts. Leave the password prompts blank).
Then, add the key to your account on
cat ~/.ssh/id_dsa.pub || ssh firstname.lastname@example.org 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'
Some versions of OpenSSH come with a utility called
ssh-copy-id which makes this task somewhat easier: