The Subversion version control system is a powerful Open Source system for management of file and directory versions. Designed from the ground up to support distributed development, it offers many leading-edge features.
This chapter covers the following topics:
Using Subversion: a quick tour
The Subversion command line client: svn
Repository administration: svnadmin
Examining the repository: svnlook
Providing remote access: svnserve
Other Subversion components
Most of the material in this chapter is adapted from Version Control with Subversion, which is cited in the Bibliography. See that book for much more information on Subversion.
Subversion is a version control system. It lets you track changes to an entire project directory tree. Every change made to the tree is recorded and can be retrieved.
Subversion is intended to be "a better CVS;" this is discussed in detail shortly. Subversion is purposely an Open Source project. If you want to participate, you can!
Actual data is kept in a repository, a set of directories and files managed by Subversion . Users use the svn client program to access the repository and make changes to it.
Subversion uses the copy-modify-merge development model. You make a private copy of a given project in a sandbox . (This is often called checking out a copy.) Like CVS and unlike RCS, this private copy is not locked in the ...