Mercurial

✍ dations ◷ 2025-02-25 06:42:35 #版本控制系统,自由跨平台软件,用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作为版本控制

相关

  • 氢氧化钡氢氧化钡是一种钡的化合物,分子式为Ba(OH)2,通常外观为白色颗粒状。氢氧化钡在分析化学中的滴定法可以当做弱酸的指示剂,对有机的弱酸别有效。它透明的溶液是不含碳酸盐的。不
  • 免疫接种免疫(英语:immunity),指生物机体识别和排除抗原物质的一种保护性反应。其中包括特异性免疫(后天免疫系统)与非特异性免疫(先天免疫系统)。“免疫”一词,最早见于中国明代医书《免疫类
  • 非洲猪瘟非洲猪瘟病毒科(学名:Asfarviridae)是双链DNA病毒中的一个科。非洲猪瘟病毒属(Asfivirus)是本科唯一的一个属,而与本科相关的Faustovirus(英语:Faustovirus)至今仍未分类。该类病毒主
  • H[AuBrsub4/sub]溴金酸,又称四溴合金酸,是一种无机化合物,化学式为HAuBr4。它类似于氯金酸。它可由氢溴酸和硝酸的混酸与金属金反应制得。
  • 电火花电火花加工(英语:electrical discharge machining,EDM),是一种借由放电产生火花,使工件成为所需形状的一种制造工艺。介电质液体分隔两电极并施以电压,产生周期性快速变化的电流放
  • 第79名这是一个国家或地区的贫富差距列表,包含了基尼系数,数据来源于联合国和CIA。R/P 10%表示10%最富的除以10%最穷的,R/P 20%表示20%最富的除以20%最穷的;联合国表示数据来自联合国
  • 凤仪站凤仪站(韩语:봉의역)是朝鲜民主主义人民共和国咸镜北道会宁市的一个铁路车站,属于会宁煤矿线。会宁煤矿线
  • 马科·雅里奇马科·雅里奇(塞尔维亚语:Marko Jarić,1978年10月12日-),塞尔维亚职业篮球运动员,曾效力于美国NBA联盟。他在2000年的NBA选秀中第2轮第30顺位被洛杉矶快船队选中。
  • 艾萨克·牛顿奖章艾萨克·牛顿奖章(英语:Issac Newton Medal)是由英国物理学会颁发的年度奖项,它包含一枚奖章和1,000英镑的奖金。 奖项颁发给对物理学做出过杰出贡献的物理学家,无论其研究领域、
  • 山姆·哈里斯山姆·哈里斯(Sam Harris,1967年4月9日-)是美国著名作家、哲学家、神经科学家,和无神论者/反神论者。被称为新无神论的四骑士之一。