工具 |
优点 |
缺点 |
svn |
1.SVN不管文件是文本还是二进制类型,在内部都是以二进制差异比较算法来表示文件的更新部分。这表示所有的文件在文件库中都是以差异的形式储存。而且在网络上传输的,都是较小的文件差异部分。这也使创建分支、打标签、合并等操作可以非常快地完成. 2. 对目录的组织的管理更加方便。SVN不光对文件做版本跟踪,也会对目录做版本跟踪。因此可以根据项目的需要,对目录结构随时进行修改,可以把现有的目录移动到新的地方。 3. 保证提交操作的完整性。SVN对提交操作的处理方式类似数据库的事务处理,要么全部成功,要么全部无效,保证了原子性。
|
1. SVN服务器管理复杂。SVN不能支持代码重构,当移动文件夹时会出错。 2. SVN不能支持离线操作。当在保密环境下或者在家里,不能同步代码 3. SVN在网络故障的情况下产生悲剧。 4. SVN速度超慢。提交、更新、浏览历史的速度都很慢。 5. SVN强迫使用者即时处理冲突,然后才能提交。导致代码不能即时提交。 6. SVN不能恢复到历史版本。SVN记录了单个文件的历史版本,但没有记录全局版本,不能恢复到上次的状态。 7. SVN经常莫名奇妙的不能提交。 8. SVN不知道为什么老需要手动clearnup。 SVN自建分支后无法进行合并。 |
git |
1、适合分布式开发,强调个体。 |
1、学习周期相对而言比较长。 2、不符合常规思维。 3、代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。 |
vss |
1.易用是 VSS 的强项, VSS 采用标准的 windows 操作界面,只要对微软的产品熟悉,就能很快上手。 VSS 的安装和配置非常简单,对于该产品,不需要外部的培训(可以为公司省去一笔不菲的费用)。只要参考微软完备的随机文档,就可以很快的用到实际的工程当中。 2.VSS 没有采用对许可证进行收费的方式,只要安装了 VSS ,对用户的数目是没有限制的。因此使用 VSS 的费用是较低的。由于 VSS 是微软的产品,可以得到稳定的技术支持。 |
1.S 不能提供对异地团队开发的支持。此外 VSS 只能在 windows 平台上运行,不能运行在其他操作系统上。 2. VSS 的安全性不高,对于 VSS 的用户,可以在文件夹上设置不可读,可读,可读 / 写 , 可完全控制四级权限。但由于 VSS 的文件夹是要完全共享给用户后,用户才能进入,所以用户对 VSS 的文件夹都可以删除。这一点也是 VSS 的一个比较大的缺点。 |