Introduction to Subversion

From SourceWiki
Revision as of 00:13, 10 February 2006 by Jprenaud (talk | contribs)
Jump to navigation Jump to search


Subversion is an open-source Version control system.

Why Subversion?

It is very similar to the better know | CVS system however, Subversion has several neat advantages over CVS:

  • files and directory can be renamed and keep their history throughout the life of the project.
  • commits are atomic, i.e. when you sent a lot of changes to the server, the "commit" is either successful or not. For instance, if the network connection is lost halfway through the transaction, the whole commit fail and the repository is not affected. It also mean that you can identify very easily all files changed during a commit.
  • a wider choice of access methods is provided, in particular webdav allows easy access via a web browser.
  • support for binary files, i.e. Word documents or Excel spreadsheets can be versionned via Subversion.

This is why we chose to install Subversion as the version control system on source. Subversion is actually being developed as a modern successor for CVS and it makes sense to standardize on a more modern technology.

Example: myproject

myproject is an example repository that is setup on source to test subversion. You can access it with a web browser at the URL http://source.ggy.bris.ac.uk/websvn using your login and password. If you do not have an account on source, use the combination guest/imaguest. Naviguate to the trunk directory and look at the files, the log and other links to get familiar with the interface..

If you have downloaded a subversion client, you can use myproject as a test repository and send your own changes. To do this, use the URL http://source.ggy.bris.ac.uk/subversion/myproject and checkout <<t>myproject. You can then edit the files in your working copy and send the changes back to the server by "commiting" your changes.