Do Not Use The Subversion Server on hobbes.cs.unm.edu
Our subversion version-controlled materials have been moved to the SSG-supported subversion server on svn.cs.unm.edu. Subversion repositories on hobbes.cs.unm.edu are no longer being backed up and nothing will be migrated when it is finally retired.
There is a Subversion server installed on hobbes.cs.unm.edu. /home/svn has been created for subversion projects; it is on a separate disk partition that is regularly backed up.
Repositories and Access Control
We've set up access control on the Subversion repositories. Each of the protocols you can use to access your repository - HTTP and svn+ssh - has different access control characteristics as set up on hobbes.
HTTP
We've integrated Subversion with the HTTP server on hobbes. The Apache HTTP server has a plug-in SVN module which responds to Subversion requests. The module uses HTTP Basic-Auth to authenticate users against a special htaccess file. Most SSL users are already in the file, under their CS usernames; let Patrick Widener know if you need to be added. This list of users is separate from the CS department list, so we can add users from other locations if need be.
If you don't like the default password, you can generate your own using /usr/bin/htpasswd on hobbes and ask for it to be used in the htaccess file. Be advised, though, that since Basic-Auth is being used, that password is transmitted in cleartext - it's not a good idea to use a password that gets you to anything else.
Access repositories through HTTP with URLs of the form http://hobbes.cs.unm.edu/svn/repository-name/path/to/project.
svn+ssh
UNM folks can use their hobbes logins in conjunction with SSH to get to repositories. These URLs look like svn+ssh://hobbes.cs.unm.edu/svn/repository-name/path/to/project. This method establishes a SSH connection, runs the Subversion command at the remote host, and pipes the result to you. You may prefer to do this since you won't have to enter a username/password, but people without cs.unm.edu logins won't be able to.
Getting to Repositories
There are multiple repositories (papers, projects, proposals, k42, and think as of this writing). If you have a collection of files that you're looking to place under version control, in most cases you want to create a directory underneath papers, projects or proposals.
The best way to create a directory with your code in one of the existing repositories is to import from your local copy. If you have a directory foo that you want to place under version control, here's an example:
cd ~/foo (or wherever, just get inside the directory)
svn import http://hobbes.cs.unm.edu/svn/projects/foo
OR
svn import svn+ssh://hobbes.cs.unm.edu/svn/projects/foo
If you really want a separate repository created, ask Widener or Bridges for now.
Other stuff
Notifying people when projects change
You can configure Subversion to send email when certain events happen. One of the ways you can use this is to notify people by email when new revisions are checked in. You can read about this in Chapter 5 of the manual or look here for an example of how to do it.