1.TortoiseSVN 的特性

Posted on Posted in 2.简介

TortoiseSVN 的特性

是什么让 TortoiseSVN 成为一个好的 Subversion 客户端?下面是一个简短的特性列表。

  • 外壳集成

  • TortoiseSVN 与Windows 外壳(例如资源管理器)无缝集成,你可以保持在熟悉的工具上工作,不需要在每次使用版本控制功能时切换应用程序。

    并且你不一定必须使用
    Windows 资源管理器,TortoiseSVN 的右键菜单可以工作在其他文件管理器,以及文件/打开对话框等标准的 Windows
    应用程序中。你必须牢记,TortoiseSVN 是有意作为 Windows
    资源管理器的扩展开发,因此在其他程序可能集成的并不完整,例如重载图标可能不会显示。

  • 重载图标

  • 每个版本控制的文件和目录的状态使用小的重载图标表示,可以让你立刻看出工作副本的状态。

  • Subversion 命令的简便访问

  • 所有的 Subversion 命令存在于资源管理器的右键菜单,TortoiseSVN 在那里添加子菜单。

因为 TortoiseSVN 是一个 Subversion 客户端,我们也很愿意为你展示一些 Subversion 本身的特性:

  • 目录版本控制

  • CVS 只能追踪单个文件的历史,但是 Subversion 实现了一个“虚拟”文件系统,可以追踪整个目录树的修改,文件目录都是版本控制的,结果就是可以在客户端对文件和目录执行移动复制命令。

  • 原子提交

  • 提交要么完全进入版本库,要么一点都没有,这允许开发者以一个逻辑块提交修改。

  • 版本控制的元数据

  • 每个文件和目录都有一组附加的“属性”,你可以发明和保存任意的键/值对,属性是版本控制的,就像文件内容。

  • 可选的网络层

  • Subversion 在版本库访问方面有一个抽象概念,利于人们去实现新的网络机制,Subversion 的“高级”服务器是
    Apache 网络服务器的一个模块,使用 HTTP 的变种协议 WebDAV/DeltaV 通讯,这给了 Subversion
    在稳定性和交互性方面很大的好处,可以直接使用服务器的特性,例如认证、授权、传输压缩和版本库浏览等等。也有一个轻型的,单独运行的
    Subversion 服务器,这个服务器使用自己的协议,可以轻松的用 SSH 封装。

  • 一致的数据处理

  • Subversion 使用二进制文件差异算法展现文件的区别,对于文本(人类可读)和二进制(人类不可读)文件具备一致的操作方式,两种类型的文件都压缩存放在版本库中,差异在网络上双向传递。

  • 高效的分支和标签

  • 分支与标签的代价不与工程的大小成比例,Subversion 建立分支与标签时只是复制项目,使用了一种类似于硬链接的机制,因而这类操作通常只会花费很少并且相对固定的时间,以及很小的版本库空间。

  • 良好的维护能力

  • Subversion 没有历史负担,它由一系列良好的共享 C 库实现,具有定义良好的 API,这使 Subversion 非常容易维护,可以轻易的被其他语言和程序使用。