What is Subversion?

Subversion is a very popular version control system which was originally designed to replace the aging CVS system which was no longer up to the task of tackling the increasingly complex software projects it was being charged with managing.

It is more flexible and scales better to manage larger, more complex projects.

It is equally suited to managing an author’s latest book project as it is to coping with large software systems comprised of tens of thousands of source code files.

It has a client-server architecture supporting widely-distributed team members but can also be used by a single person on a single computer.

Client-Server Architecture

Sharing a Subversion repository between users requires the use of a server. Repositories should never be accessed simultaneously by multiple users or client apps without employing a server to manage access to the repository.

While the client and server components of a Subversion system are generally located on different computers, they don’t have to be. The separation is not necessarily physical, it’s more a separation of responsibilities: the server is responsible for controlling access to the files under version control and the client is responsible for enabling the user to access these files.

Cornerstone is a Subversion client and doesn’t contain any server capabilities. If you need to share files between computers then Cornerstone can help you get started, but you will need to separately install and maintain a Subversion server.

A repository may also be used without a server, in which case the repository must be on the computer’s local disk and only one user and/or app may access the repository at a time.

Subversion is free software. This means that the software itself is not sold commercially. Instead it’s published under a so-called open source license which makes it available at no cost both to users and other software developers who wish to build upon it.

You can read the terms of this license in the acknowledgements document included with Cornerstone and accessible under Help > Acknowledgements.

You can get more information about the Subversion project from http://subversion.apache.org

Do I need to install Subversion? Where can I get it from?

You don’t need to have Subversion installed to run Cornerstone because it comes with its own copy of Subversion baked into the app.

You will only need to install Subversion if you want to use a version of the Subversion command line tools other than that which came with your operating system. You can download binary packages of Subversion for your operating system here.

Getting more information about Subversion

Cornerstone contains the complete Subversion reference documentation in PDF format. You can open the documentation using Help > Subversion Documentation.