This book is written for computer-literate folk who want to use Subversion to manage their data. While Subversion runs on a number of different operating systems, its primary user interface is command-line based. That command-line tool (svn), and some auxiliary programs, are the focus of this book.
For consistency, the examples in this book assume the reader
is using a Unix-like operating system and is relatively comfortable
with Unix and command-line interfaces. That said, the
svn program also runs on non-Unix platforms
like Microsoft Windows. With a few minor exceptions, such as
the use of backward slashes (
\) instead of
forward slashes (
/) for path separators, the
input to and output from this tool when run on Windows are
identical to its Unix counterpart.
Most readers are probably programmers or system administrators who need to track changes to source code. This is the most common use for Subversion, and therefore it is the scenario underlying all of the book's examples. But Subversion can be used to manage changes to any sort of information—images, music, databases, documentation, and so on. To Subversion, all data is just data.
While this book is written with the assumption that the reader has never used a version control system, we've also tried to make it easy for users of CVS (and other systems) to make a painless leap into Subversion. Special sidebars may mention other version control systems from time to time, and a special appendix summarizes many of the differences between CVS and Subversion.
Note also that the source code examples used throughout the book are only examples. While they will compile with the proper compiler incantations, they are intended to illustrate a particular scenario, not necessarily serve as examples of good programming style or practices.