Bazaar 是一个分布式的版本控制系统,它发布在 GPL 许可协议之下,并可用于 Windows、GNU/Linux、UNIX 以及 Mac OS 系统。Bazaar 由 Canonical 公司赞助,目前已服务于Samba、Drupal 等知名的开源项目。
Bazaar 当前已经包含许多有用的功能,这些功能使之具有如下鲜明的特点:
Bazaar 也包括智能合并、支持插件、可与第三方工具整合、文档支持等其他特性。
5. Mercurial
Mercurial 是一种轻量级分布式版本控制系统,采用 Python 语言实现,易于学习和使用,扩展性强。相对于传统的版本控制,具有如下优点:
- 更轻松的管理。
传统的版本控制系统使用集中式的 repository,一些和 repository相关的管理就只能由管理员一个人进行。由于采用了分布式的模型,Mercurial 中就没有这样的困扰,每个用户管理自己的 repository,管理员只需协调同步这些repository。 - 更健壮的系统。
分布式系统比集中式的单服务器系统更健壮,单服务器系统一旦服务器出现问题整个系统就不能运行了,分布式系统通常不会因为一两个节点而受到影响。 - 对网络的依赖性更低。
由于同步可以放在任意时刻进行,Mercurial 甚至可以离线进行管理,只需在有网络连接时同步
6. FOssil
Fossil 是一个简单、高可靠性的分布式软件配置管理系统。值得关注的功能:
1. Bug跟踪和Wiki
2. Web接口
3. 自动同步
4. 支持 HTTP 接口
5. 嵌入式 CGI
6. 稳健而且可靠
7. OpenCVS
OPENCVS 是自由的协作版本系统(CVS)实现,CVS 是最流行的开放源代码版本控制软件。它可以用于客户端, 以及服务器端的版本库,提供了对存储在版本库中的数据的细粒度访问控制。 它的目标是除了完全减少系统安全性的特性之外, 尽可能的与其它的 CVS 实现兼容。
OPENCVS 项目是在最近 GNU CVS 弱点暴露之后,经过讨论之后启动的。 尽管 CVS 被广泛使用,但是最近几年它的开发已经基本停止了。 CVS 的实现和设计,已经被发现许多安全问题。
8. Monotone
monotone 是一个分布式版本控制系统,提供了简单的、单文件事务版本存储和点对点同步协议,支持历史版本敏感的合并操作、轻量级分支处理以及集成代码评审和第三方测试工具。使用加密的版本命令方式和客户端 RSA 认证,很好的支持国际化,不依赖第三方工具,支持跨平台。
10. CVS
CVS(Concurrent Versions System)老牌的版本控制系统,它是基于客户端/服务器的行为使得其可容纳多用户,构成网络也很方便。这一特性使得CVS成为位于不同地点的人同时处理数据文件(特别是程序的源代码)时的首选。