深入了解Subversion:功能、历史与使用指南
1. 什么是Subversion
Subversion是一个免费的开源版本控制系统,它能管理文件和目录及其随时间所做的更改。借助Subversion,你可以恢复数据的旧版本,或者查看数据的变更历史,因此很多人将版本控制系统视为一种“时间机器”。
Subversion支持跨网络操作,不同计算机上的用户均可使用。多人能在各自位置对同一组数据进行修改和管理,这促进了协作。由于工作有版本记录,即使数据出现错误更改,也能轻松撤销。
需要注意的是,有些版本控制系统同时也是软件配置管理(SCM)系统,专门用于管理源代码树,具备许多软件开发特定的功能。而Subversion是一个通用系统,可管理任何文件集合,无论是源代码、购物清单,还是数字视频混音等。
2. Subversion的历史
2000年初,CollabNet公司开始寻找开发者编写CVS的替代品。CollabNet的协作软件套件CollabNet Enterprise Edition(CEE)最初使用CVS进行版本控制,但CVS的局限性从一开始就很明显,因此他们决定从头开始编写一个新的版本控制系统,保留CVS的基本思想,同时避免其缺陷。
同年2月,CollabNet联系了Karl Fogel,此时Karl正与朋友Jim Blandy讨论新的版本控制系统设计。Jim不仅想出了“Subversion”这个名字,还设计了Subversion数据存储的基本架构。CollabNet聘请了Karl和Ben Collins - Sussman,详细设计工作于5月开始。在CollabNet的Brian Behlendorf、Jason Robbins