水银的(mercurial)和吉特(git)的区别

Mercurial的主要设计目标包括高性能、可扩展性、无服务器、全分布式协作开发、对纯文本和二进制文件的健壮处理以及高级分支和合并功能,同时保持概念上的简单性。它包括一个集成的web界面。...

吉特水银的都是免费的软件工具分布式版本控制和软件源代码管理。

Both Git and Mercurial were started at approximately the same time with similar aims. The immediate stimulus was the announcement in April 2005 by Bitmover that they were withdrawing the free version of BitKeeper, which had been used for the version control requirements of the linux操作系统核心项目。mercurial的创建者matt mackall决定编写一个分布式版本控制系统来替代linux内核。麦考尔于2005年4月19日首次宣布推出mercurial。

git是由LinusTorvalds为linux内核开发而创建的,其重点是速度。git的开发始于2005年4月3日,该项目于4月6日发布,并于4月7日实现了自托管,4月18日完成了多个分支的首次合并。

linux内核项目决定使用git而不是mercurial,但是mercurial现在被许多其他项目使用。

对比图

git与mercurial对比图
吉特 水银的
额定电流为3.98/512345(109额定值) 额定电流为4.15/512345(110额定值)
内置web服务器 是的
事件前/事件后挂钩 是的 是的
行尾转换 是的 是的
标签 是的 是的
国际支持 部分 是的
文件重命名 是(隐式) 是的
合并文件重命名 是的 是的
符号链接 是的 是的
开源 是的 是的
签署的修订 是的 是的
修订ID 沙一段哈希 数字,沙一段散列
原子提交 是的 是的
历史模型 快照 变更集
存储库大小 o(补丁)(大o符号) o(补丁)(大o符号)
并发模型 合并 合并
操作系统 类似unix、windows、mac os x 类似unix、windows、mac os x
暂存区 是的
外部分支 是的
成本 免费的 免费的
rcs关键字 是,但不推荐 通过捆绑插件
浅签出/克隆 是的 布奇拉扩建
文件/目录名跟踪 重命名检测 重命名跟踪
子目录签出/克隆
数据仓库模型 分布式 分布式
权限保持 仅执行位 仅执行位
网络协议 自定义,通过ssh、rsync、http、email包自定义 http协议通过宋承宪自定义、电子邮件包(带有标准插件)
编制人 朱尼奥·哈马诺,莱纳斯·托瓦尔兹 马特麦考尔
维护人 哈马诺 马特麦考尔
写在 C伯恩壳牌公司 python和C
合并跟踪 是的 是的
bug tracker集成 trac公司(通过插件)
许可证 总分版本2. 总分版本2.
网站 git-scm.com www.selenic.com/mercurial
操作系统 posix、windows支持 类似unix、windows、mac os x
简介(来自维基百科) 吉特是一个免费的分布式版本控制或软件源代码管理项目,强调快速性。吉特最初是由利努斯托瓦尔兹为linux操作系统内核开发而创建的。 水银的是一个面向软件开发人员的跨平台、分布式版本控制工具。它主要是使用python编程语言实现的,但包括一个用C编写的二进制差异实现。
类型 修订控制 修订控制

设计目标

Mercurial的主要设计目标包括高性能、可扩展性、无服务器、全分布式协作开发、对纯文本和二进制文件的健壮处理以及高级分支和合并功能,同时保持概念上的简单性。它包括一个集成的web界面。

LinusTorvalds为Git设计的关键目标之一是操作的速度和效率。其他设计标准包括防止意外或恶意**的有力保障措施。

使用git的项目(projects using git) vs. 使用mercurial的项目(projects using mercurial)

现在有几个引人注目的软件项目使用Git进行版本控制,最著名的是Linux内核、Perl、Samba、X.org服务器、Qt(toolkit)、每个孩子一台笔记本(OLPC)核心开发、Ruby on Rails web framework、VLC、YUI、Merb、Wine、SWI Prolog、GNOME、GStreamer、蜻蜓BSD和Android移动平台。

使用Mercurial的项目包括Adblock Plus、Aldrin、Audacious、Dovecot IMAP server、GNU Octave、NxOS、Nuxeo、Growl、MoinMoin wiki软件、Mozilla、Mutt(电子邮件客户端)、Netbeans(IDE)、OpenJDK、Python、SAGE、Sun Microsystem的OpenSolaris和Oracle的开源软件Btrfs。

吉特(git) vs. mercurial便携性(mercurial portability)

Mercurial最初是在Linux上运行的。它已经被移植到Windows、macosx和大多数其他类似Unix的系统中。Mercurial主要是一个命令行程序。

Git主要是在Linux上开发的,但是可以在其他类似Unix的操作系统上使用,包括BSD和Solaris。

Git也可以在Windows上运行。有两种变体:

  • 一个名为msysgit的本地Microsoft Windows端口即将完成。截至2009年2月,已经有可下载的安装程序准备好测试一些命令,这些命令还不能从gui获得,必须从命令行调用。
  • Git也运行在Cygwin(一个POSIX仿真层)之上,尽管它的速度明显较慢,特别是对于作为shell脚本编写的命令。

git用户界面(user interface for git) vs. 水银的(mercurial)

Mercurial的所有操作都作为其驱动程序hg的关键字选项调用,hg是元素汞的化学符号的引用。Mercurial的GUI接口包括Hgk(Tcl/Tk)。这是作为Mercurial扩展实现的,是官方版本的一部分。此查看器显示Mercurial存储库的变更集的有向无环图。如果扩展已启用,则可以通过命令“hg view”调用此查看器。hgk最初基于一个类似的git工具gitk。hgk替换名为hgview,它是用纯python编写的,并提供gtk和qt接口。

相关的Mercurial工具包括:

  • 用于合并的相关工具包括(h)gct(Qt)和Meld。
  • convert扩展允许从CVS、Darcs、git、gnuarch、Monotone和Subversion存储库导入。
  • Netbeans IDE支持版本6中的Mercurial。
  • tortoisehg提供了一个Windows用户友好的右击菜单界面。
  • VisualHG是msvisualstudio2008的Mercurial源代码管理提供程序插件。
  • Mercurial Eclipse是Eclipse 3.3及更新版本的Eclipse团队提供程序插件。

使用GUI运行Git的替代方法包括:

  • git cvsserver(它模拟CVS服务器,允许使用Windows CVS客户机)
  • 基于eclipseide的Git客户端,基于Git内部的纯Java实现:egit
  • 对Git的netbeanside支持正在开发中。
  • 在TortoiseGit和Git扩展上启动了一个Windows资源管理器扩展(类似于TortoiseCVS/TortoiseSVN),它是一个资源管理器扩展、一个独立的GUI和一个visualstudio2008插件

相关视频

参考文献

  • *********:Git_(软件)
  • *********:Mercurial_(软件)
  • Mercurial开发人员Martin Geisler深入比较Git和Mercural的特性

  • 发表于 2021-07-04 10:10
  • 阅读 ( 319 )
  • 分类:IT

你可能感兴趣的文章

吉特(git)和github(github)的区别

...。 Git是一个开源的分布式版本控制系统。它比SVN、CVS和Mercurial等其他版本控制系统更受欢迎。存储库是存储与项目关联的所有文件的数据空间。每个开发人员都有他们的私有工作区作为工作副本,即本地存储库。当没有internet连...

  • 发布于 2020-10-19 21:44
  • 阅读 ( 207 )

溴(bromine)和水星(mercury)的区别

溴和汞之间的关键区别在于溴是唯一在室温下处于液态的卤素,而汞是唯一在室温下处于液态的金属。 在标准温度和压力条件下,溴和汞都能以液态存在。然而,溴是非金属,而汞是金属。 目录 1. 概述和主要区别 2. 什么...

  • 发布于 2020-11-02 16:18
  • 阅读 ( 221 )

镓(gallium)和水星(mercury)的区别

镓和汞的主要区别在于,镓的密度比汞低。 镓和汞是一种独特的化学元素,在接近室温时以液态存在。需要注意的是,汞在室温下基本上是液体,而镓在接近室温的温度下变成液体。由于熔点低,它们很容易熔化。 目录 1. ...

  • 发布于 2021-03-04 17:21
  • 阅读 ( 569 )

github是什么,它的用途是什么?

...nustorvalds启动。Git类似于其他版本控制系统Subversion、CVS和Mercurial等。 所以,Git是一个版本控制系统,但这意味着什么呢?当开发人员创建一些东西(例如一个应用程序)时,他们会不断地修改代码,在第一次正式(非测试版)...

  • 发布于 2021-04-09 04:55
  • 阅读 ( 162 )

mercury reader for chrome为您提供了一个干净、无广告的web文章视图

Chrome:甚至在广告之外,一些网站充斥着自动播放视频、侧边栏和其**扰因素,它们让你很难真正坚持你来阅读的东西:帖子本身。Mercury Reader是一个浏览器扩展,可以清理你在Chrome中的阅读体验。Firefox用户在浏览器中内置了一...

  • 发布于 2021-05-16 10:34
  • 阅读 ( 156 )

吉特(git)和github(github)的区别

...做的更改,而GitHub是Git存储库的在线托管服务。 什么是吉特(git)? Git是一个开源的分布式版本控制系统,它允许您通过跟踪所做更改的历史记录来管理项目的许多变体,同时允许并行版本。 与使用集中存储位置对所有文件进...

  • 发布于 2021-06-25 08:16
  • 阅读 ( 247 )

大气压(barometric pressure)和大气压力(atmospheric pressure)的区别

主要差异-大气压与大气压 当谈到压力时,大气压力和大气压是两个常用的术语。它们基本上指的是同一事物,但根据用法,它们可能有两种不同的含义。大气压力和大气压力之间的主要区别在于大气压力描述了大气施加...

  • 发布于 2021-06-27 04:13
  • 阅读 ( 570 )

酒精(alcohol)和水银体温计(mercury thermometers)的区别

酒精的主要区别(main difference alcohol) vs. 水银体温计(mercury thermometers) 温度计是用来测量温度的装置。温度计上的温度表示为一个特定单位的数字。温度计由两部分组成:一个用于检测温度的传感器和一个用于获取所测温度数值的...

  • 发布于 2021-06-29 21:29
  • 阅读 ( 602 )

无液(aneroid)和水银气压计(mercury barometer)的区别

无膜盒的主要区别(main difference aneroid) vs. 水银气压计(mercury barometer) 气压计是用来测量大气压力的装置。大气压力,有时也称为大气压,是由于地球大气中空气的重量而产生的压力。这个大气压从一个点到另一个点的变化取决于...

  • 发布于 2021-06-29 22:12
  • 阅读 ( 783 )

git拉(git pull)和git获取(git fetch)的区别

GIT Pull和GIT Fetch的主要区别是GIT Pull命令下载远程存储库中的更改,并合并这些更改并将它们存储在本地存储库中,而GIT Fetch命令允许检索远程存储库中所做的更改,而不合并这些更改。 在开发大型软件程序时,使用版本控制系...

  • 发布于 2021-07-01 17:42
  • 阅读 ( 162 )
uslz2199
uslz2199

0 篇文章

相关推荐