Subversion - Version Control Software Overview

The Subversion revision control system is a good place to store files. It maintains revision history as files change over time. It also allows multiple users to work on the same text file simultaneously, merging changes automatically. Here at AITS we have extended the core functionality of Subversion to include security (i.e., limiting who has access to sets of files) and deployment options for distributing files to servers across the enterprise in near real time.


Policy & Administration

Supported Use: Subversion, in use by AITS since 2009, is used to maintain the revision history of sets of files (source code, executable archives, deployment descriptors, and other files) organized in a typical directory tree structure. In addition to maintaining a record of who changed what when, Subversion stores information about and allows reversion to any previous state of any checked-in file. One major use of Subversion is to support development efforts by maintaining consistent deployment environments (Development, Test, Production, and other specialized environments) which can be changed systematically during development/test/production deployment cycles.

AITS has extended the basic Subversion repository implementation to include direct-to-server near-real-time synchronization of files between the repository and other servers (see Deployment using Subversion, below). Further gradual extensions to the current Subversion implementation, for instance use by other university units and enhancements to its current capabilities, are in the discussion/experimentation stage. If you have an idea about how Subversion might be used to support development efforts, please discuss it within your work group and with your supervisor, then send an inquiry to the Subversion Administrator.

Account Management: For new accounts, password changes, or account deletion, please e-mail the request to AITS Security. Please include any modules that you require access to in this request.

Module Management: For module creation, please send an email to Subversion Administrator specifying your repository, directory you would like to create a security module for, and the initial list of users having access to this module. If you require access to an existing module, please send an e-mail to the Subversion Administrator, including a sign off from the module owner.

Repository Management: For problems using your Subversion client, or to request help using a Subversion repository in general, please e-mail the Subversion Administrator.

Deployment using Subversion: In some cases, it may benefit your team to deploy files maintained in the repository directly to the AITS-hosted servers that use them. Some examples of existing deployments include: web and application server configuration, content served by our web servers (including this page), jar files used by messaging components, etc. If you have a deployment need, please contact the Subversion Administrator so that we may better understand your requirements.

Downloading and Installing Subversion Clients

All connections to Subversion currently authenticate using Enterprise Authentication Service (EAS) credentials over HTTPS. All users must have an EAS account to access supported Subversion repositories.

Installing Windows Subversion clients

TortoiseSVN User Manual: For basic TortoiseSVN functionality instructions please refer to the TortoiseSVN User Manual. A quick reference for the TortoiseMerge tool (packaged with TortoiseSVN) is also available in the TortoiseMerge User Manual.

Installing MacOS, Linux or Unix Subversion clients

SyncroSVN User Manual: For basic SyncroSVN functionality instructions please refer to the SyncroSVN User Manual. Video tutorials on how to use advanced features within SyncroSVN are also available on the SyncroSVN Video Tutorial page.