本手册旨在描述 Subversion 1.1。如果您使用的是更新版本的 Subversion,我们强烈建议您访问 https://svnbooks.subversion.org.cn/ 并查阅适合您 Subversion 版本的书籍版本。
版本控制是管理信息变更的艺术。它长期以来一直是程序员的重要工具,程序员通常会花费时间对软件进行小的更改,然后在第二天撤消这些更改。但版本控制软件的用途远远超出了软件开发领域的范围。在任何可以找到人们使用计算机管理经常变化的信息的地方,都有版本控制的空间。这就是 Subversion 发挥作用的地方。
本章包含对 Subversion 的高级介绍——它是什么;它做什么;如何获取它。
Subversion 是一个免费的/开源版本控制系统。也就是说,Subversion 随着时间的推移管理文件和目录。一棵文件树被放置在一个中心 资源库 中。资源库很像一个普通的文件服务器,不同的是它会记住对您的文件和目录所做的每一个更改。这允许您恢复数据的旧版本,或者检查数据更改的历史记录。在这方面,许多人认为版本控制系统是一种“时间机器”。
Subversion 可以跨网络访问其资源库,这使得它可以被不同计算机上的人使用。在某种程度上,不同的人从各自的位置修改和管理同一组数据的能力促进了协作。在没有一个单一的渠道必须通过该渠道进行所有修改的情况下,进度可以更快。而且因为工作是版本化的,所以您不必担心质量是失去该渠道的代价——如果对数据进行了某些不正确的更改,只需撤消该更改即可。
一些版本控制系统也是软件配置管理 (SCM) 系统。这些系统专门用于管理源代码树,并具有许多特定于软件开发的功能——例如,原生理解编程语言,或提供用于构建软件的工具。然而,Subversion 不是这些系统之一。它是一个通用系统,可用于管理 任何 文件集合。对于您来说,这些文件可能是源代码——对于其他人来说,可能是从杂货购物清单到数字视频混音等等。