Mercurial

✍ dations ◷ 2025-06-13 09:06:49 #版本控制系统,自由跨平台软件,用C编程的自由软件,用Python编程的自由软件

Mercurial是跨平台的分布式版本控制软件,主要由Python语言实现,但也包含用C语言实现的二进制比较工具。Mercurial一开始的主要运行平台是Linux,现在Mercurial已经移植到Windows、Mac OS X和大多数的类Unix系统中。Mercurial主要由命令行程序组成,现在也有了图形用户界面。对Mercurial的所有操作都由用不同的关键字作为参数调用程序“hg”来实现,Hg是参考水银的化学符号而取的名字。

Mercurial的主要设计目标包括高性能、可扩展性、分散性、完全分布式合作开发、能同时高效地处理纯文本和二进制文件,以及分支和合并功能,以此同时保持系统的简洁性。Mercurial也包括一个集成的Web界面。

Mercurial的创建者和主要开发人员是Matt Mackal。其源代码采用GNU通用公共许可证第二版为授权,确保了Mercurial是一个自由软件。

Mercurial采用SHA-1散列算法来识别修订版本。Mercurial使用一个基于HTTP的协议来接入网络中的版本库,旨在减少往返的提交、连接数和数据传输。Mercurial也可以工作在ssh环境下,其协议和基于HTTP的协议非常相似。

Bryan O'Sullivan已写作了一个全面的参考手册:。该手册根据开放出版许可协议免费提供。

Mackall在2005年4月19日第一次发布了Mercurial。其动机是当月Bitmover公司宣布撤销其免费版本的BitKeeper。

2005年时BitKeeper已经被用于Linux内核的项目版本控制。Mackall决定为Linux内核开发写一个分布式的版本控制软件来替代BitKeeper。在该项目启动数天前,Linus Torvalds基于类似的目的开始了另一个现在相当知名的版本控制软件Git。

Linux内核开发项目决定使用Git而不是Mercurial,但Mercurial也使用于在很多其他的项目中(见下文)。

以下网站提供免费的Mercurial版本库托管:

这些项目(部分)使用了Mercurial作为版本控制

相关

  • 移动设备移动设备(英语:Mobile device),也被称为手持设备(handheld device)、移动终端、移动通信终端等,大多数为口袋大小的计算设备,包括手机、笔记本电脑、平板电脑、POS机、车载电脑等。
  • 银色银色是一种近似银的颜色。它并不是一种单色,而是渐变的灰色。
  • 洛桑联邦理工学院坐标:46°31′13″N 06°33′56″E / 46.52028°N 6.56556°E / 46.52028; 6.56556洛桑联邦理工学院(EPFL)(法语:École polytechnique fédérale de Lausanne,缩写EPFL),是一所世
  • 世界记忆遗产名录世界记忆计划(英语:Memory of the World Programme)是一项联合国教科文组织倡议发起的项目,始于1992年,项目下的“世界记忆名录”以保障文献,避免集体性遗忘、忽视、被时间和气候
  • 中风康复中风康复是一个患者通过治疗重获日常生活技能、重返有意义生活的过程。对于绝大多数患者,康复涉及到多个学科专业,需要由具备各种技能的健康专家组成医疗小组共同协作,包含护理
  • 李文龙 (消歧义)李文龙可以是:
  • 新见藩新见藩(日语:新見藩/にいみはん  */?),是日本江户时代的一个藩,位于备中国阿贺郡(现:冈山县新见市),藩厅在新见阵屋,藩主是关氏。元禄10年(1697年)、因为宗家美作津山藩森家废藩,亲族中
  • 海口沙漠海口沙漠位于屏东县车城乡海口村沿岸。形成的原因是恒春半岛东北季风强大,其中挟带着大量的风沙,吹到陆地上,形成了一个自然奇观。但现今因沿岸砍伐木麻黄等防风林,致使积沙量大
  • 东北舆地释略《东北舆地释略》,是清代景方昶编辑的中国东北地理志,是研究古代中国东北地理的重要资料。分为四卷,包括:
  • 庆廉 (光绪进士)庆廉 (1868年-?),字介臣,号挹泉,满洲正红旗人,清朝政治人物、同进士出身。光绪十七年顺天乡试中举,二十四年(1898年),参加光绪戊戌科殿试,登进士三甲22名。同年五月,以主事分部学习。