Mercurial是一种流行的分布式版本控制系统,它提供了归档和保存旧版本源代码的方法。 Mercurial 于 2005 年作为开源版本控制系统出现,作为闭源 BitKeeper 的替代品,由 Matt Mackall 开发。
与 SVN 是集中式版本控制系统不同,Mercurial 是分布式版本控制系统。也就是说,当您将更改推送到存储库时,它将转到本地机器。因此,该过程变得非常快,因为您不会经常推送到远程服务器(尽管可以通过这种方式进行设置)。
Mercurial 主要是用Python构建的,这使得它跨平台兼容。这也是 Mercurial 主要用作命令行工具的原因之一,尽管有可用的 GUI 工具。 Mercurial 一直是 Adium、Mozilla、Netbeans、Vim、Growl 等大品牌使用的版本控制系统。除此之外,许多个人开发人员使用 Mercurial 来管理他们的代码。
水银的特点:
- 分布式架构:
大多数传统的版本控制系统(如 SVN)都基于客户端-服务器架构,其中中央服务器保存对项目所做的更新。 Mercurial 是完全分布式的,每个开发人员都有一个完整项目的本地副本。这样,开发人员就不再依赖于网络或服务器访问。提交代码、分支和合并可以更快地完成。 - 快速地 :
Mercurial 的实现和数据结构的设计方式使该工具足够快以处理多次提交。差异可以在修订之间生成或在更短的时间内回滚,通常以秒为单位。这就是它被用于大型复杂项目(如 OpenJDK 或 NetBeans)的原因。 - 平台独立:
Mercurial 旨在独立于平台。因此,出于与性能相关的原因,它的主要部分是用Python编写的,一小部分是用可移植的 C 编写的。由于这个原因,Mercurial 的二进制版本可在所有主要平台上使用。 - 可扩展:
Mercurial 可以使用与 Mercurial 一起提供的官方插件进行功能扩展,也可以从外部来源下载或编写我们自己的插件。扩展是用Python编写的,可以更改基本命令的工作方式、添加新命令并访问 Mercurial 的所有核心功能。 - 使用方便 :
Mercurial 的命令集非常简单,大多数 SVN 用户会发现它很容易。 Mercurial 的基本界面易于学习和使用。 - 开源:
Mercurial 是免费提供的,并根据 GNU 通用公共许可证第 2 版或任何更高版本的条款获得许可。