Subversion

✍ dations ◷ 2025-07-23 05:36:13 #版本控制系统,Apache软件基金会,自由跨平台软件,用C编程的自由软件

Apache Subversion(简称SVN,svn),一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS转移到Subversion。

CollabNet 于2000年创建SVN项目,意在写出一款近似CVS操作方式的版本控制系统。只不过,此款产品针对CVS的bug和一些缺失的功能,进行了修正和补充。

2000年2月,他们联系了Open Source Development with CVS(Coriolis, 1999)的作者Karl Fogel,问他是否愿意为这个新项目工作。巧的是这时Karl已经在和他的朋友Jim Blandy讨论一个新的版本控制系统的设计。在1995年,两人开了一家提供CVS技术支持的公司,叫作Cyclic Software。虽然公司已经卖掉了,他们仍然在日常工作中使用CVS。在使用CVS时受到的束缚已经让Jim开始仔细思考管理版本化数据的更好的路子。他不仅已经起好了名字“Subversion”,而且有了Subvesion资料库的基本设计。当CollabNet打来电话时,Karl立刻同意为这个项目工作。Jim征得他的老板RedHat Software的同意,让他投入这个项目,而且没有时间限制。CollabNet雇用了Karl和Ben Collins-Sussman,从5月份开始详细设计。由于Greg Stein和CollabNet的Brian Behlendorf和Jason Robbins作了恰当的推动,Subversion很快吸引了一个活跃的开发人员社区。这说明了许多人有相同的受制于CVS的经验,他们对终于有机会对它做点什么表示欢迎。

最初的设计团队设定了几个简单的目标。他们并不想在版本控制方法论上有新突破。他们只想修补CVS。他们决定Subversion应该与CVS相似,保留相同的开发模型,但不复制CVS最明显的缺点。虽然它不一定是CVS的完全的替代品,但它应该和CVS相似,从而任何CVS用户可以不费什么力气的转换过来。

经过14个月的编码,在2001年8月31号,Subversion可以“自我寄生”了。就是说,Subversion开发人员停止使用CVS管理Subversion的源代码,开始使用Subversion代替。

虽然CollabNet发起了这个项目,而且仍然资助一大部分的工作(它为一些专职的Subversion开发人员发薪水)。但是Subversion像大部分开放源码的项目一样运作,由一个松散透明,鼓励能者多劳的规则管理。CollabNet的著作权许可证和Debian FSG完全兼容。换句话说,任何人可以免费下载,修改,按自己的意愿重新分发Subversion,而不必得到来自CollabNet或其他任何人的许可。

2009年11月,Subversion被Apache Incubator项目所接收。

2010年1月,正式成为Apache软件基金会的一个顶级项目。

对于企业级应用,subversion还有其先天不足,比如对于多个地点的并行开发。Wandisco公司为此开发了subversion multisite,实现异地对等服务器自动同步,支持并行开发以及异地备份。

ALM(Application Lifecycle Management)是软件配置管理的未来趋势,各种软件版本工具包括subversion都要集成到其中。目前UberSVN是唯一的以Subversion为基础构建的ALM平台,并实现了协同开发以及社交化编码。

虽然在2006年Subversion的使用族群仍然远少于传统的CVS,但已经有许多开放源码团体决定将CVS转换为Subversion。已经转换使用Subversion的包括了FreeBSD、Apache Software Foundation、KDE、GNOME、GCC、Python、Samba、Mono以及许多团体。许多开发团队换用Subversion是因为Trac、SourceForge、CollabNet、CodeBeamer等项目协同作业软件以及Eclipse、NetBeans等IDE提供Subversion的支持集成。除此之外,一些自由软件开发的协作网如SourceForge.net除了提供CVS外,现在也提供项目开发者使用Subversion作为源代码管理系统,JavaForge、Google Code以及BountySource则以Subversion作为官方的源代码管理系统。

2009年,绝大多数CVS服务已经改用SVN。此时CVS早已经停止维护。不过CVS也有了合适的替代品。

在windows非常受到欢迎的一套客户端软件,它与资源管理器集成得相当不错,可以透过资源管理器在文件或目录上用鼠标右键的菜单完成SVN的操作。TortoiseSVN官方网站 页面存档备份,存于互联网档案馆

Mac OS X 平台下类似 TortoiseSVN 的图形化 SVN 客户端,可自动标记文件状态,并通过右键菜单提供各种常用 SVN 功能。下载 SnailSVN (Mac App Store) 页面存档备份,存于互联网档案馆

将subversion的操作集成进Visual Studio的SVN 客户端软件。Ankhsvn官方网站 页面存档备份,存于互联网档案馆

将Subversion的操作集成进Eclipse的SVN 客户端软件。Subclipse官方网站 Archived 2011-08-25 at WebCite

和Subclipse相同。Subversive官方网站 页面存档备份,存于互联网档案馆

Mac OS下类似TortoiseSVN的软件。SCPlugin官方网站 页面存档备份,存于互联网档案馆

Mac OS X下的一款客户端软件。SVNx官方网站 页面存档备份,存于互联网档案馆

Unix下类似TortoiseSVN的软件。eSVN官方网站 页面存档备份,存于互联网档案馆

Linux下使用KDE桌面管理下类似TortoiseSVN的软件。kdesvn官方网站

Linux下使用Gnome桌面管理下类似TortoiseSVN的软件。RabbitVCS官方网站 页面存档备份,存于互联网档案馆

Windows下集成了讨论功能的客户端软件。GTalkabout官方网站 页面存档备份,存于互联网档案馆

相关

  • 偏微分在数学中,一个多变量的函数的偏导数(英语:partial derivative)是它关于其中一个变量的导数,而保持其他变量恒定(相对于全导数,在其中所有变量都允许变化)。偏导数的作用与价值在向量
  • 弱听听觉障碍(英语:Hearing loss)又称听力缺损,指听觉部分或完全丧失,而耳聋人士则是指完全没有或几乎没有听力者。听力缺损可能发生在单耳或双耳,有可能是暂时或永久性质。孩童的听力
  • 水冷水冷是一种液体冷却方式,一般是指用水等水性液体来冷却机器。其冷却运行方式跟油冷大同小异,都是将水在机器的水道里和在外部用喉管连接的散热器不停地穿流冷却。水冷是一战、
  • 戴志强戴志强(1944年-),浙江绍兴人,出生于上海,中国钱币学家,曾任河南安阳博物馆副馆长、中国人民银行货币发行司副司长、中国钱币博物馆馆长等职。戴志强父亲戴葆庭是浙江绍兴人,中国著名
  • 兹德内克·莫拉维克兹德内克·莫拉维克(捷克语:Zdeněk Moravec,1968年-),捷克天文学家,以发现大量小行星闻名。莫拉维克毕业于布拉格查理大学,在1992到2000年间任职于克列特天文台。1994到1998年他发
  • 坎多事件坎多事件是在1994年1月18日早晨发生于西班牙加利西亚坎多乡村的爆炸事件。在这被描述为类似通古斯事件的报告中没有伤亡。当地居民声称看到天空中出现为期近一分钟的火球,可
  • 约翰内斯·林南科斯基约翰内斯·林南科斯基(芬兰语:Johannes Linnankoski),原名为维赫托里·约翰·佩尔托宁(芬兰语:Vihtori Johan Peltonen,1869年10月18日-1913年8月10日),芬兰作家。他最著名的作品为《
  • 祖父悖论祖父悖论是一种时间旅行的悖论,科幻故事中常见的主题。最先由法国科幻小说作家赫内·巴赫札维勒(René Barjavel)在他1943年的小说《不小心的旅游者》()中提出。情景如下:假如你回
  • 觉罗德宁觉罗德寜(1782年-?),后避讳清宣宗旻宁更名为觉罗德厚,字远村,号宗维,满洲正红旗人,嘉庆甲戌进士。中进士后任翰林院庶吉士,授翰林院编修,詹事府右赞善、春事坊右庶子,日讲起居注官,嘉庆二
  • 手筋手筋,围棋术语,出自日本,意思是局部对弈中的最佳妙著。在围棋中,“筋”意指棋子与棋子之间的关系。在所有的筋之中,效果极大的特殊手法,即称为手筋。“手筋”是指在围棋的局部对弈