Apache Subversion(SVN)诞生20周年
Apache 软件基金会发文庆祝版本控制系统 Apache Subversion(SVN)已诞生 20 周年。
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 会继续践行自己的目标:为在所有流行操作系统上开发各种规模的软件项目提供支持。
- org.apache.subversion.javahl.ClientException: svn: E200007: Commit failed (details follow): svn: E20
- Centos 6 上安装Apache Subversion(SVN)
- Linux apache subversion(SVN)启动脚本(咋个办呢 zgbn)
- Windows 下配置 SVN 的经验小记 (基于 Apache, Subversion, TortoiseSVN)
- SVN版本管理系统的使用(CentOS+Subversion+Apache+Jsvnadmin+TortoiseSVN)
- 在Fedora 11上通过apache搭建SVN服务器(Subversion)
- Apache+Subversion+TortoiseSVN
- RHEL5+Subversion-1.6.1(svn-1.6.1)+Apache-2.2.11 安装配置
- subversion for linux的安装(SVN+apache+linux)
- Linux配置SVN服务器(subversion+apache)
- SVN版本管理平台(Subversion+Apache+Jsvnadmin)安装配置和使用
- 持续集成篇_03_svn版本管理系统的使用(centos+subversion+apache+jsvnadmin+tortoisesvn)
- 碰到异常记录-------------Svn:org.apache.subversion.javahl.ClientException
- Apache+Subversion+TortoiseSVN
- Subversion1.6.15 + apache2.2.17 + AnkSVN2.1总结(中……)
- SVN提交的问题——org.apache.subversion.javahl.ClientException: Attempted to lock an already-locked dir
- 关于SVN的建立(服务器端Apache、Subversion,客户端tortoiseSVN等的设置问题)
- apache 无法加载Subversion的mod_dav_svn模块,解决办法
- Errors occurred while updating the change sets for SVNStatusSubscriber org.apache.subversion.javahl.