fbpx
维基百科

Mercurial

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

Mercurial
開發者Matt Mackall
当前版本
  • 6.5.3 (2023年11月6日;穩定版本)[1][2]
源代码库
  • www.mercurial-scm.org/repo/hg-stable
编程语言PythonC语言
操作系统类Unix, Windows, Mac OS X
类型版本控制
许可协议GPL v2
网站www.mercurial-scm.org

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

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

技术细节 编辑

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

文档 编辑

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

历史 编辑

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

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

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

相关软件 编辑

  • Mercurial图形用户界面有:Hgk(Tcl/Tk)。该程序作为Mercurial的插件而开发,现在被直接包含于正式版本中。界面可以通过命令命令'hg view'来调用(如果安装了该扩展的话)。hgk最初来源于名为gitk的类似工具。hgk有一个名为hgview (页面存档备份,存于互联网档案馆)是纯Python编写的替代软件,同时提供GTK和QT界面。
  • 合并用的工具包括(h)gct(Qt)和Meld
  • 转换插件可以将CVSDarcs英语DarcsGitGNU archMonotonePerforce英语PerforceGNU BazaarSubversion的版本库转换为Mercurial的版本库。
  • 从第6版Mercurial开始支持NetBeans
  • TortoiseHg提供了一个面向Windows的基于右键菜单的友好界面,也用于GNOME的Nautilus文件管理器。

其他 编辑

代码托管 编辑

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

采用Mercurial的项目 编辑

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

参见 编辑

参考文献 编辑

  1. ^ Mercurial tag 6.5.3. 
  2. ^ Release Notes. 
  3. ^ Matt Mackall, Towards a Better SCM: Revlog and Mercurial (页面存档备份,存于互联网档案馆), Ottawa Linux Symposium Proceedings, 2006.
  4. ^ Bryan O'Sullivan. Mercurial: The Definitive Guide. 2007-01-01 [2009-10-07]. (原始内容于2019-10-25). 
  5. ^ Mackall, Matt. . Linux kernel (邮件列表). 2005-04-20 [2009-10-07]. (原始内容存档于2008-10-10). 
  6. ^ Mackall, Matt. Re: Mercurial 0.4b vs git patchbomb benchmark. Linux kernel (邮件列表). 2005-04-29 [2009-10-07]. (原始内容存档于2012-07-09). 
  7. ^ Google Code Blog: Mercurial Now Available to All Open Source Projects. 2009-05-28 [2009-10-07]. (原始内容存档于2012-12-01). 
  8. ^ . [2010-06-17]. (原始内容存档于2010-05-14). 
  9. ^ 一些使用Mercurial的项目. [2009-10-07]. (原始内容于2009-04-22). 
  10. ^ J. Paul Reed. . 2007-04-12 [2009-10-07]. (原始内容存档于2009-03-21). 
  11. ^ James Gosling. . 访谈 with Robert Eckstein. October 2006 [2009-10-07]. (原始内容存档于2009-03-01). 
  12. ^ . 2006-10-05 [2009-10-07]. (原始内容存档于2009-09-25). 
  13. ^ David Wood. We decided in the end to use Mercurial rather than Git.. 2009-04-06 [2009-05-07]. (原始内容于2010-12-06). 
  14. ^ Ian Pratt. mercurial now live. Xen-devel (邮件列表). 2005-07-01 [2009-10-07]. (原始内容于2009-02-18). 
  15. ^ Timo Sirainen. CVS to Mercurial switch. Dovecot-news (邮件列表). 2007-05-19 [2009-10-07]. (原始内容于2015-09-23). 
  16. ^ Switch to hg.netbeans.org completed. January 2008 [2009-10-07]. (原始内容于2012-09-18). 
  17. ^ x265: log. [2014-06-18]. (原始内容于2020-11-30). 

外部链接 编辑

  • (英文)
  • (英文)非官方的Mercurial主页 (页面存档备份,存于互联网档案馆
  • (英文)Mercurial:权威指南 (页面存档备份,存于互联网档案馆),Bryan O'Sullivan 2009年通过O'Reilly出版,免费在网上发布
  • Mercurial: an alternative to git from LWN.net
  • TeamWare用户 (页面存档备份,存于互联网档案馆
  • Google TechTalk on Mercurial (页面存档备份,存于互联网档案馆

mercurial, 是跨平台的分布式版本控制软件, 主要由python语言实现, 但也包含用c语言实现的二进制比较工具, 一开始的主要运行平台是linux, 现在已经移植到windows, x和大多数的类unix系统中, 主要由命令行程序组成, 现在也有了图形用户界面, 对的所有操作都由用不同的关键字作为参数调用程序, 来实现, hg是参考水银的化学符号而取的名字, 開發者matt, mackall当前版本6, 2023年11月6日, 穩定版本, 源代码库www, mercurial, repo, stable编. Mercurial是跨平台的分布式版本控制软件 主要由Python语言实现 但也包含用C语言实现的二进制比较工具 Mercurial一开始的主要运行平台是Linux 现在Mercurial已经移植到Windows Mac OS X和大多数的类Unix系统中 Mercurial主要由命令行程序组成 现在也有了图形用户界面 对Mercurial的所有操作都由用不同的关键字作为参数调用程序 hg 来实现 Hg是参考水银的化学符号而取的名字 Mercurial開發者Matt Mackall当前版本6 5 3 2023年11月6日 穩定版本 1 2 源代码库www wbr mercurial scm wbr org wbr repo wbr hg stable编程语言Python和C语言操作系统类Unix Windows Mac OS X类型版本控制许可协议GPL v2网站www wbr mercurial scm wbr orgMercurial的主要设计目标包括高性能 可扩展性 分散性 完全分布式合作开发 能同时高效地处理纯文本和二进制文件 以及分支和合并功能 以此同时保持系统的简洁性 3 Mercurial也包括一个集成的Web界面 Mercurial的创建者和主要开发人员是Matt Mackal 其源代码采用GNU通用公共许可证第二版为授权 确保了Mercurial是一个自由软件 目录 1 技术细节 2 文档 3 历史 4 相关软件 5 其他 5 1 代码托管 5 2 采用Mercurial的项目 6 参见 7 参考文献 8 外部链接技术细节 编辑Mercurial采用SHA 1散列算法来识别修订版本 Mercurial使用一个基于HTTP的协议来接入网络中的版本库 旨在减少往返的提交 连接数和数据传输 Mercurial也可以工作在ssh环境下 其协议和基于HTTP的协议非常相似 文档 编辑Bryan O Sullivan已写作了一个全面的参考手册 Mercurial 权威指南 4 该手册根据开放出版许可协议免费提供 历史 编辑Mackall在2005年4月19日第一次发布了Mercurial 5 其动机是当月Bitmover公司宣布撤销其免费版本的BitKeeper 2005年时BitKeeper已经被用于Linux内核的项目版本控制 Mackall决定为Linux内核开发写一个分布式的版本控制软件来替代BitKeeper 在该项目启动数天前 Linus Torvalds基於類似的目的開始了另一個現在相當知名的版本控制軟體Git 6 Linux内核开发项目决定使用Git而不是Mercurial 但Mercurial也使用于在很多其他的项目中 见下文 相关软件 编辑Mercurial图形用户界面有 Hgk Tcl Tk 该程序作为Mercurial的插件而开发 现在被直接包含于正式版本中 界面可以通过命令命令 hg view 来调用 如果安装了该扩展的话 hgk最初来源于名为gitk的类似工具 hgk有一个名为hgview 页面存档备份 存于互联网档案馆 是纯Python编写的替代软件 同时提供GTK和QT界面 合并用的工具包括 h gct Qt 和Meld 转换插件可以将CVS Darcs 英语 Darcs Git GNU arch Monotone Perforce 英语 Perforce GNU Bazaar和Subversion的版本库转换为Mercurial的版本库 从第6版Mercurial开始支持NetBeans TortoiseHg提供了一个面向Windows的基于右键菜单的友好界面 也用于GNOME的Nautilus文件管理器 其他 编辑代码托管 编辑 以下网站提供免费的Mercurial版本库托管 Bitbucket Google Code 7 JavaForge 8 Project Kenai by Sun Microsystems SourceForge GNU Savannah Alioth by Debian BerliOS 在Mercurial wiki中列出的其他网站 CodePlex 页面存档备份 存于互联网档案馆 采用Mercurial的项目 编辑 这些项目 部分 使用了Mercurial作为版本控制 9 Mozilla 10 OpenJDK 11 OpenSolaris 12 Symbian OS 13 The Xen hypervisor 14 Adblock Plus Adium Aldrin Audacious CubicWeb Dovecot IMAP server 15 GNU Octave Growl LinuxTV Video4Linux LuxRender 3D Render Engine MoinMoin wiki software Mutt email client Netbeans 16 NxOS Nuxeo SAGE x265 17 参见 编辑 nbsp 自由软件主题 版本控制 分布式版本控制 版本控制软件列表 版本控制软件的比较参考文献 编辑 Mercurial tag 6 5 3 Release Notes Matt Mackall Towards a Better SCM Revlog and Mercurial 页面存档备份 存于互联网档案馆 Ottawa Linux Symposium Proceedings 2006 Bryan O Sullivan Mercurial The Definitive Guide 2007 01 01 2009 10 07 原始内容存档于2019 10 25 Mackall Matt Mercurial v0 1 a minimal scalable distributed SCM Linux kernel 邮件列表 2005 04 20 2009 10 07 原始内容存档于2008 10 10 Mackall Matt Re Mercurial 0 4b vs git patchbomb benchmark Linux kernel 邮件列表 2005 04 29 2009 10 07 原始内容存档于2012 07 09 Google Code Blog Mercurial Now Available to All Open Source Projects 2009 05 28 2009 10 07 原始内容存档于2012 12 01 MercurialEclipse 1 6 0 Enterprise Codebases with Ease 2010 06 17 原始内容存档于2010 05 14 一些使用Mercurial的项目 2009 10 07 原始内容存档于2009 04 22 J Paul Reed Version Control System Shootout Redux Redux 2007 04 12 2009 10 07 原始内容存档于2009 03 21 James Gosling James Gosling on Open Sourcing Sun s Java Platform Implementations Part 1 访谈 with Robert Eckstein October 2006 2009 10 07 原始内容存档于2009 03 01 OpenSolaris SCM Project History 2006 10 05 2009 10 07 原始内容存档于2009 09 25 David Wood We decided in the end to use Mercurial rather than Git 2009 04 06 2009 05 07 原始内容存档于2010 12 06 Ian Pratt mercurial now live Xen devel 邮件列表 2005 07 01 2009 10 07 原始内容存档于2009 02 18 Timo Sirainen CVS to Mercurial switch Dovecot news 邮件列表 2007 05 19 2009 10 07 原始内容存档于2015 09 23 Switch to hg netbeans org completed January 2008 2009 10 07 原始内容存档于2012 09 18 x265 log 2014 06 18 原始内容存档于2020 11 30 外部链接 编辑 英文 官方Mercurial项目wiki 英文 非官方的Mercurial主页 页面存档备份 存于互联网档案馆 英文 Mercurial 权威指南 页面存档备份 存于互联网档案馆 Bryan O Sullivan 2009年通过O Reilly出版 免费在网上发布 Mercurial an alternative to git from LWN net TeamWare用户 页面存档备份 存于互联网档案馆 Google TechTalk on Mercurial 页面存档备份 存于互联网档案馆 Subversion还是CVS Bazaar或者Mercurial 比较四个开源版本控制系统本条目的部分内容翻译自英語維基百科条目Mercurial 版本318417746 並以知识共享 署名 相同方式共享4 0协议授权使用 原文作者列表請參閱其页面历史 取自 https zh wikipedia org w index php title Mercurial amp oldid 78985986, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。