You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 22 Next »

Subversion

General Information

Subversion Server

svn.rice.edu

Subversion Web Interface

www.svn.rice.edu

HTTP Access

Unauthenticated

HTTPS Access

Authenticated

GUI Clients

Authentication & Authorization

Authentication, who can connect to the server, is handled by Rice. Anyone with a netId can authenticate to the Subversion server or web interface, this includes guest accounts. Authentication can be forced by using the https protocol when accessing the server.

Authorization, who can access the repository, is controlled by the repository owner and their delegates. Each repository is created with a /rice_config directory. This directory contains a file named access_file. The access_file controls who has access to that specific repository. Changes to the access_file take up to 5 minutes to become active on the server. Please see the file access_file.readme which is also located in the /rice_config directory for a simple explanation of the format of this file. For more information, please read the Subversion Book linked to on the right.

What is Subversion?

Subversion is a free/open-source version control system. That is, Subversion manages files and directories, and the changes made to them, over time. This allows you to recover older versions of your data, or examine the history of how your data changed. In this regard, many people think of a version control system as a sort of "time machine".

Version Control with Subversion by O'Reilly Media(c)

The repository

Anyone with a Rice netId can create up to 3 repositories on the campus Subversion server. These repositories are tied to an individual and will be subject to cleanup when the individual's accounts become inactive. It is possible to transfer ownership of a repository to another individual, please submit a ticket to the IT Help system to request it.

The subversion URL

 http://svn.rice.edu/r/myrepository 

You access your repository using a URL similar to what you would use in a web browser. However this URL is used with a Subversion client. There are several GUI clients and a command line client. The command line client is described in the Subversion Book linked to on the right.

Let's start by decomposing the URL.

  • The protocol

The first part of the URL listed above is http. You could also use https. The difference between the two is if you use http you will not be prompted for authentication thus you will be restricted to only being able to access repositories that are readable by the public. If you use the https protocol, you will be prompted to authenticate and then you will be able to access any repository for which you have permission.

  • The server

The server is svn.rice.edu. This is the campus subversion server. It supports the subversion protocol. You need a subversion client to be able to access the data on the server.

  • The command

All repositories start with /r. The /r stands for repository and is mandatory.

  • The repository

This where you put the name of your repository, in this case it is myrepository. Though you can choose almost any name for your repository. There are some restrictions about what kind of name you can use though. The name must begin with a letter and can include letters and numbers and the special characters -, +, _. All names are lower case only.

Tools

More Information

The web interface

 http://www.svn.rice.edu 

If you point your web browser to the URL above, you can access the Subversion web interface. Just like with the Subversion URL, the protocol you use is important. If you access the web interface with http you will not be prompted to authenticate and you will only be able to see repositories that are available to the public. If you use https, you will be forced to authenticate but you will see any repositories for which you have access.

There is a Login link on the upper right corner of the front page. If you click on this link, it will move you from the http, non authenticated, page to the https, authenticated, page.

Common commands

  • No labels