What is it?
Lemur hosts a Subversion repository. Subversion is a version control system; it lets you track changes to files, pull up old revisions, and
collaborate with other users. These files can be almost anything, although some features only work on text files such as source code. For a full description of what Subversion does and how to use it, I recommend reading the free online
book Version Control with Subversion
. Those of you with previous experience with CVS
be particularly interested in Appendix B, Subversion for CVS Users
You also may want to check out these wiki pages:
You can change your Subversion password using the svnpasswd web interface
. These passwords are separate from any other Computational Lingustics accounts you may have. (If your browser prompts you with a certificate warning, you need to install the UW root certificate.)
"Hook scripts" (for example, to email people in a project when a commit is made) are set up on a project-by-project basis. Email linghelp@u
if you need something like this.
Trac is a web tool for Subversion. It allows users to browse source code, timelines, and changesets in an easy-to-read, web-friendly format. It also provides a wiki, a simple trouble ticket interface, and roadmap and milestone planning tools. You can read more about Trac at the Trac Project homepage
Trac pages are set up on a project-by-project basis. If you'd like one for your project, email linghelp@u.
Subversion client software:
, the Subversion client, is already installed on patas and on the Treehouse workstations. If you'd like to install it on your own computer, binary packages for many operating systems are available on the Subversion website
. If you want to compile your own client, source code is available from the same location.
Notes about specific operating systems:
After installing the Subversion binary package
, you will need to add /usr/local/bin to your default path. To do this, edit the file
in your home directory and add the following line:
Windows uses different end-of-line characters than MacOS X and UNIX. This isn't important if you'll always be accessing your files from a Windows system; however, if you'll be accessing the same repository from both Windows and UNIX systems, you should either use Windows software that can handle UNIX end-of-line characters, or tell Subversion to convert the line endings for you
Accounts are offered to instructors and students in the Department of Linguistics and other members of the linguistics laboratories. To request an account, email linghelp@u
with your UW NetID and a statement of your affiliation with the Department of Linguistics or one of the Linguistics laboratories. You will receive an email with your temporary password when your account has been created. Your password will be stored in the clear both on the server and on machines on which you run the client, so don't use a password that you use for anything else.
When you request an account you will be automatically added to the lemur-announce mailing list. This is a low-traffic list used only for
distributing information of interest to lemur users, such as scheduled downtime.
Your personal directory:
You will be granted a personal directory under /instructors or /students. It's up to you to create whatever structure makes sense to you underneath this directory. A typical initial import of a project might look like this:
svn import my-project svn://lemur.ling.washington.edu/students/mynetid/my-project/trunk
(See Chapter 2 of Version Control with Subversion
for more information on how to use svn import, and some suggestions on how to lay out your projects.)
Do not commit confidential information (e.g., grades or other student information) to your repository.
While Subversion attempts to keep other users from reading it, passwords are stored in cleartext and cached by the client so the security level is not high.
/shared is accessible to everyone and is intended for collaboration between users.
Guidelines for the shared directory:
- Create a subdirectory for your project that doesn't conflict with existing names.
svn list svn://lemur.ling.washington.edu/shared will tell you what's there.)
- Be courteous to other users. You should contact the owner of a project before committing changes to it. If someone else commits unwanted changes to your project, though, don't fret -- just use svn merge to undo the changes.
- If a project isn't listed in the Wiki and you need to know who owns it, use the svn log command to find out who created its directory. For example:
svn log svn://lemur.ling.washington.edu/shared/mysteryproject
The test directory:
/test is accessible to everyone and is intended as a "sandbox" area for people learning to use Subversion. Please don't commit anything
large into /test, and don't commit anything you want to keep -- it's subject to occasional cleaning.
- 28 Aug 2008