NOTE: This information no longer applies to users accessing the CNMAT subversion server!

Why?

We use subversion in conjunction with the SSH (Secure SHell) protocol to encrypt all communication between subversion clients (e.g., running on your laptop) and the server. By default this means that every time you have to communicate with the server (checkout, commit, log, etc.) you have to type your password on the server. You can avoid this with a few simple steps.

How?

Open a terminal window on your computer. Type this:

ssh-keygen -t dsa

Accept the default filename by hitting return.

You don't want a passphrase, so just hit return when it asks you for one, and then hit return a again when it asks you to confirm.

If this is the first computer you're configuring

Log into our SVN server.

ssh my_login_on_the_SVN_server@128.32.122.217

Make yourself a ".ssh" directory on the SVN server, then log out:

mkdir ~/.ssh
exit

Now that you're back on your laptop, copy the correct half of the magic encryption key to the SVN server:

scp ~/.ssh/id_dsa.pub my_login_on_the_SVN_server@128.32.122.217:.ssh/authorized_keys

If you are configuring a second computer

Copy the correct half of the magic encryption key to a temporary file on the SVN server:

scp ~/.ssh/id_dsa.pub my_login_on_the_SVN_server@128.32.122.217:.ssh/garbanzo

Log into the server:

ssh my_login_on_the_SVN_server@128.32.122.217

Append the new magic encryption key to your .ssh/authorized_keys file:

cd .ssh
cat garbanzo >> authorized_keys && rm garbanzo
exit

Test it out

Now you should be able to do SVN operations from your laptop without typing your password. As a test, try logging back into the SVN server via ssh; if it asks you for a password this time then something's wrong.

ssh my_login_on_the_SVN_server@128.32.122.217

Maybe this will help:
http://www.puddingonline.com/~dave/publications/SSH-with-Keys-HOWTO