SVN - 版本控制系统


Apache
跨平台
C/C++

软件简介

Subversion (SVN)
是一个版本控制系统,相对于的RCS、CVS,采用了分支管理系统,它的设计目标就是取代CVS。互联网上免费的版本控制服务多基于Subversion。

开源中国的码云 **gitee.com** 支持 Git 和 SVN 同步,可用来托管 SVN
项目。

优于CVS之处

  • 原子提交。一次提交不管是单个还是多个文件,都是作为一个整体提交的。在这当中发生的意外例如传输中断,不会引起数据库的不完整和数据损坏。

  • 重命名、复制、删除文件等动作都保存在版本历史记录当中。

  • 对于二进制文件,使用了节省空间的保存方法。(简单的理解,就是只保存和上一版本不同之处)

  • 目录也有版本历史。整个目录树可以被移动或者复制,操作很简单,而且能够保留全部版本记录。

  • 分支的开销非常小。

  • 优化过的数据库访问,使得一些操作不必访问数据库就可以做到。这样减少了很多不必要的和数据库主机之间的网络流量。

使用情况

虽然在 2006年 时 Subversion 的使用族群仍然远少于传统的 CVS,但已经有许多开放原码团体决定将 CVS 转换为
Subversion。已经转换使用 Subversion 的包括了 FreeBSD、Apache Software
Foundation、KDE、GNOME、GCC、Python、Samba、Mono 以及许多团体。有许多的团队换用 Subversion 是因为 Trac
所提供的专案管理环境。除此之外,一些自由软件开发的协作网如SourceForge除了提供 CVS 外,现在也提供专案开发者使用 Subversion
作为源码管理系统, JavaForge、Google Code以及 BountySource 则以 Subversion 作为官方的源码管理系统。

Subversion中文网:http://www.subversion.org.cn/