Subversion,缩写为SVN,是一款最初由CollabNet Inc .开发的版本管理软件,该软件的设计目标是取代CVS,不仅能带来CVS的大部分功能,还能提供便捷的数据恢复功能,可以帮助您快速将系统文件恢复到之前修改的状态。
Subversion是一款完全免费开源的专业版本控制管理软件,可以支持非ASCII文本、二进制数据、混合跟踪、文件锁定等功能。Subversion还带来了基于HTTP的WebDAV和DeltaV协议,非常方便网络通信。
:
Subversion特色
1.存储类型格式
CVS是一个基于RCS文件的版本控制系统。每个CVS文件只是一个普通的文件,加上一些额外的信息。这些文件将简单地重复本地文件的树形结构。因此,不需要担心任何数据丢失,必要时可以手动修改RCS文件。
SVN基于一个关系数据库(BerkleyDB)或一系列二进制文件(FS_FS)。一方面,它解决了许多问题(例如,并行读写共享文件),并添加了许多新功能(例如,运行时的事务特性)。)。然而,另一方面,数据存储变得不透明。
2.速度
CVS慢。
总的来说,由于不同的架构实现,SVN确实比CVS快得多。在网络上,它只传输很少的信息,在离线模式下支持更多的功能。但这也是有代价的。速度的代价是巨大的存储(完全备份所有工作文件)。
3、标记分支
SVN使用旗帜和树枝,放弃其他三样东西。事实上,这意味着他们用复制归档中的文件或目录来保存日志来代替这个概念。这样,标志创建和分支创建都只是仓库内的文件复制。对于分支:分支只是仓库内部一个单独的目录,不像早期交错的。对于标记:不再可能标记代码。在某种程度上,SVN完整的档案号弥补了这一缺陷。SVN的整个仓库都有版本号,但单个文件没有。
4.[计]元数据
CVS只允许存储文件。
SVN允许一个文件有任意数量的可命名属性,它的功能非常完整。
5.文件类型
CVS最初是为文本文件存储而设计的。因此,很少支持其他文件类型(二进制、Unicode)。如果有必要,应该有其他信息,并调整客户端-服务器端。
:
Subversion功能
1.它包含了CVS的大部分功能。
CVS是最基本的版本控制系统。包含了CVS的大部分功能,并稍微改进了一些功能。
2、目录的版本
将目录名反映为版本号。
3.基于版本的复制、删除和重命名。
无论复制、删除、重命名,都会标注版本号,虽然听起来怪怪的。
4.自由版本化元数据操作
允许将任何元数据附加到文件或目录。这些属性是键/值对,并且被版本化。它还提供了将任何键/值属性附加到修订版的方法。这些属性不会被版本化,因为它们会自动将元数据附加到版本空间,但它们可以随时更改。
5、混合跟踪
增加了混合跟踪功能。
6.文件锁
支持文件锁定,当多个用户试图编辑同一个文件时,会收到警告。
7.支持Apache网络服务,基于WebDAV/DeltaV协议。
网络通信采用基于HTTP的WebDAV/DeltaV协议,Apache网络服务器提供网络存储的站点服务。
8.可执行标签
当一个文件是可执行文件时,它会被提示,当可执行文件被置于版本控制时,它会阻止程序检查其他目录。
9.独立过程模式
可以独立模式运行。
10.只读存储映像
提供工具SVNsync,用于将主服务器上的文件同步到子存储服务器上,并标记为只读。
组件介绍
由几个部分组成,下面将简单介绍这些部件。下面的描述可能过于简短,难以理解,但不要担心,这些组件将在本书后面的章节中进行更详细的阐述。
1、SVN
命令行客户端程序。
2、转换
此工具用于显示工作副本的状态(在术语中,当前项目的修订版本)。
3、SVNlook
直接查看版本库的工具。
4、SVNadmin
构建、调整和修复版本库的工具。
5、SVNdumpfilter
过滤版本库转储数据流的工具。
6、SVN的莫德达夫
ApacheHTTP服务器的一个插件,使版本库可以通过网络访问。
7、服务器
独立运行的服务器程序可以作为守护进程调用,也可以通过SSH调用,这是通过网络访问版本库的另一种方式。
8、同步
一个通过网络增加镜像版本库的程序。
上面给大家详细的介绍了Sub,以上内容仅2u手游网小编个人理解,最后希望大家喜欢!