序言

如果C是一条足够吊死你自己的绳子,那么就把Subversion当作存放绳子的工具吧。” —Brian W. Fitzpatrick

在开源软件世界,并行版本系统(CVS)一直是版本控制长久以来的唯一选择。事实证明,这是个正确的选择。CVS本身是自由软件,不加限制的处事风格,对网络化操作的支持(众多身处不同地方的程序员可以共享他们的工作),都非常符合开源世界的协作精神。CVS和它半混乱状态的开发模型已成为开源文化的基石。

但是,和其它许多工具一样,CVS开始显露出衰老的迹象。而Subversion,正是以CVS继任者的面目出现的新型版本控制系统。Subversion的设计者们力图通过两方面的努力赢得CVS用户的青睐:保持构建开源软件版本控制系统的方式(以及视觉和感觉上)与CVS尽可能类似,同时尽力弥补CVS许多显著的缺陷。这些努力的结果使得从CVS迁移到Subversion不需要作出重大的变革,Subversion确实是非常强大、非常有用和非常灵活的工具。

本书是为Subversion 1.2系列撰写的。在书中,我们尽力涵盖Subversion的所有内容。但是,Subversion有一个兴盛和充满活力的开发社区,已有许多新的特性和改进措施计划在新版本的Subversion中实现,本书中讲述的命令和特性可能会有所变化。