SVN 是开源的集中式版本控制系统,其最大优势是概念模型和用法简单、可靠性高。相较于 RCS 和 CVS,它采用了分支管理系统,最初的设计目标就是取代 CVS。不过 SVN 的这个愿景早已改变,Apache Subversion 副总裁 Stefan Sperling 称 Subversion 的使命宣言已于2010年更新为「面向大众的企业级集中版本控制系统」。
SVN 由 CollabNet 公司于2000年创建,2009年11月提交至 Apache Incubator 进行孵化,并于2010年2月成为 Apache 基金会的顶级项目。
同为版本控制系统,尽管 Git 凭借其丰富且优秀的特性(更好的性能、更高的可靠性、分布式模型和分支处理等)成为了目前主流的 VCS,但 SVN 在不少领域也仍然很受欢迎,非常适合用于大型项目。诸如 Eclipse、Python、Ruby、SourceForge 和 WordPress 等组织和项目均广泛采用了 SVN 进行关键任务代码的分发和协作工作流。Apache 软件基金会的基础设施也使用了 SVN,为 300 多个 Apache 顶级项目及子项目管理着数百万行代码。
SVN 的早期开发成员之一 Brian Fitzpatrick 说到:“虽然现在有大量快速、可靠且高效的版本控制系统,但二十年前这个数字可以说是零,因为当时 CVS 是唯一被广泛使用的版本控制系统。即使当今大多数人使用的是 Git,但 SVN 可以说是促使人们从 CVS 迁移到 Git 以及其他现代版本控制系统的催化剂。”
CollabNet 公司兼 ASF 联合创始人 Brian Behlendorf 表示 SVN 的成功正是「社区重于代码」这个 ASF 一直贯彻的理念的最好印证。当时 SVN 核心团队的开发工作公开透明,为了帮助新手快速上手使用,他们花费了大量时间来设计和编写文档。为此,SVN 很快吸引了活跃的开发者参与进来,并建立起自己的社区。社区的开发者不断创新,为项目添加功能,修复 bug 并推动发展,使代码不断变得更好。
Apache Subversion 副总裁 Sperling 称,SVN 会继续践行自己的目标:为在所有流行操作系统上开发各种规模的软件项目提供支持。
文章转载自 OSCHINA 社区