为什么Git这么炒作?…而其他人不?[关闭]


124

近年来,围绕Git的大肆宣传。每个人都知道Git,没人知道替代方案。

像Mercurial这样的其他产品似乎并未引起注意。两者均于2005年发布,并提供类似的功能。此外,通常认为Mercurial更易于使用,更直观,并且长期以来具有更好的UI。因此,可以假定这将是一种流行的替代方法,特别是对于那些刚开始使用分布式版本控制的人。然而,对于大多数人来说,这似乎并不为人所知,与Git的成功相当不同。

这篇文章的重点是试图更好地理解这种现象。

Git如何获得蛋糕的全部?他们是否以某种方式使用了更好的营销?是因为它的社区更……糟糕……“冗长”吗?是因为“ Linus”这个名字吗?是因为它的怪异形象吗?

你怎么看?


63
您可能对Linus Torvalds是其受欢迎的唯一原因是正确的……
Robert Koritnik 2011年

4
我不知道,我觉得他们被暴露给我的量大致相等...尽管我在hg之前听说过git。但是,是的,托瓦尔兹(Torvalds)是一位名人,因此他所参与的任何事情都可能引起关注。
PERP

13
我喜欢GitHub ...就这样
2011年

7
@jrwren,我会说,我已经使用前言本评论既不混帐也不水银。如果我要学习Git,然后立即学习Mercurial(或反之亦然),其中之一可能会减少我的学习时间。那个花了更少时间的那个是我认为更易于使用的那个。Grokking通常意味着需要花费一些时间来理解,因此很难使用。我并不是说这会使产品变得更糟,有时您需要更陡峭的学习曲线才能使用功能更强大的工具,但这肯定会改变易用性。
zzzzBov 2011年

8
@MarkTrapp上帝,马克!看起来每个人都在进行很好的讨论,然后您必须走出来,将每个人都当成警察。我希望我知道像StackOverflow这样的站点可以进行讨论。
西奥多·史密斯

Answers:


86

我相信GitHubGitorious之类的服务是一个很大的因素。对于人们来说很重要的一点是,他们可以在某个地方托管他们的东西,尤其是GitHub是一个很棒的服务。

出于商业上的考虑,当DVCS流行时,就没有这种服务了(至少我没有意识到)。您现在已经拥有Bitbucket,也许还有其他人,但是GitHub已经存在了很长一段时间,它是众所周知的,并且越来越好。


除此之外,一些大型开源项目使用git来为您做出决定。我被“强制”多次使用git(例如,对于android),但我没有被强制使用Mercurial或Bazaar。另外,我认为git很棒:)
FeatureCreep

11
还有用于hg的Google代码和SourceForge
配置器

7
Github推动了Git的发展,Gitthub将其他存储库置于阴影之下。Bitbucket具有一些优势(免费的私人存储库),但是与Github相比,UI较差
iandotkelly 2011年

2
我单独使用Mercurial与GitHub交流... hggit插件(hg-git.github.com)使得将工具与社区分离成为可能。但也许不是来自社区工具。
bpanulla 2011年

1
CodePlex也支持Mercurial。
格兰特·

86

我看到很多答案,这取决于作者在听到一个或另一个SCM时的感受。其他人则说这全是运气。我相信好运可以追溯到历史上。

我将谈论历史。

为了解决同一问题,同时创建了GitMercurial那时,Linux内核被迫停止使用BitKeeper那时,它是专有的分布式SCM,已经使用了3年。原因是BitKeeper背后的公司BitMover的首席执行官Larry McVoy停止向Linux开发人员免费提供他的软件,因为Linux社区内部有人对其进行了反向工程。

莱纳斯·托瓦尔兹(Linus Torvalds)对已经存在的问题不满意,随后开始研究一种全新的SCM,他很快将其称为Git。此后不久,Matt Mackall出于类似原因启动了Mercurial项目。

经过一段时间分别开发这些项目后,Matt Mackall展示了他的SCM的高级版本,并以某种方式对其进行了基准测试,并将其与Git(本身只有几周的历史)进行了比较。Linus考虑使用它代替Git进行内核开发,但是当他意识到Mercurial正在使用Changesets记录修订版本时放弃了这个想法。他担心这与BitKeeper的工作方式太接近了,他当然不希望有任何能让人说“他们建立了BitKeeper克隆”的东西。

因此,Git代替Mercurial用于内核开发,但两者在技术上都相关。最终结果是,Git最初是在设计要使用的地方实际使用,而Mercurial并没有找到它的第一个大型FOSS用途。由于它具有出色的设计,并且由于Matt Mackall的毅力,它最终成名并被用于大型现实项目。

今天,他们都很有名。哪一个最著名是不可能说的。Google Code直到最近才集成了Git,而Mercurial则由来已久。许多真正大而著名的项目都使用其中之一。

我想我的意思是,当您开始一个项目的原由消失时,很难获得人气,但仍然可行。

Bazaar是另一个在GNU世界中非常有名的SCM,但除此之外,它并不多,因为它的建立是为了满足GNU社区。软件通常会到达其创建者想要去的地方,而且没有进一步发展。

另一方面,分布式SCM显然是赢家。我看不到有很多用途广泛的非分布式SCM。


5
我非常感谢这段历史。
jrwren 2011年

4
@TMN你是对的!实际上,当安德鲁·特里杰尔(Andrew Tridgell)的逆向工程曝光后,当拉里·麦沃伊(Larry McVoy)更改了BitKeeper的许可时,发生了太多的火焰大战,莱纳斯·托瓦尔兹(Linus Torvalds)决定放弃它,并给了自己一周的时间来寻找替代者。当时,真正的竞争对手是Monotone,但速度缓慢。许多人同时制造替换件,每个人都很高兴使用新工具。我认为Git首先达到1.0,然后是Mercurial;集市花了将近两年的时间。
Thaddee Tyl 2011年

7
“我看不到有很多用途广泛的非分布式SCM。” 这取决于您所在的行业。Perforce,ClearCase和svn仍被广泛使用,在开源世界中并没有那么多(svn除外)。哦,是的,Windows商店中的Visual Source Safe和MS Team随便什么。
Bob Murphy

13
“逆向工程”是指远程登录服务器并键入“ help”
替代

3
对于DVCS和CVCS,我通常会这样说:“所有软件都由Tao参与,不应该受到嘲笑。” “包括Redmond的软件吗?” “哦,天哪,看看时钟。班级开除。”
Bob Murphy

77

莱纳斯·托瓦尔兹

Linus是Git的拥护者,多年来一直大力提倡Git成为核心linux小组,并且从那里发展壮大。我敢说这完全是由于Linus对* nix社区的影响。

就我个人而言,我仍然使用Subversion,但这是出于偏好而非实用程序。


12
我个人认为Linus不像Linux那样具有巨大的知名度-您几乎可以告诉没有DVCS(甚至一般的软件开发)知识的人,比起“用于Linux的人”,它更有可能提供信誉。 Linux内核”。
Michael Borgwardt

6
他不仅是它的大力提倡者,而且还是他创造原始版本之前将其移交给Junio Hamano的人
Marco Ceppi

44
什么?为什么您更喜欢Subversion?
配置器

11
您是否不是说您仍然出于习惯和惯性而不是偏好或效用来使用Subversion?这就是为什么我仍在使用它,我也怀疑我们大多数人...
Cody Gray

7
@deadalnix:因为Linux和Linux有成群的尖叫的狂热者,这是任何其他开源项目所无法比拟的。他们是Git的一支非常有效的街头团队。
汤姆·安德森

34

版本控制系统通常遇到的问题是分支合并

你需要尝试它时,它工作,了解它是多么痛苦也可以是如何重要,有工作,为了与分支自由的工作。

得知Linus Torvalds编写了git来做到这一点,并且据称在一种情况下他已经使用git 一次将十二个分支合并在一起,这对于git有趣是一个非常令人信服的论点。

大约一年前,我不得不在hg和git之间进行选择,上述合并是选择git的重要因素。第二个原因是Eclipse组织改用git,因此Eclipse工具有望用于Java项目。随着Eclipse 3.7的发布,这种情况发生了。我们也许早了6-9个月。

对于不同的需求,汞可能同样有用。Sun经过非常仔细的调查,将其用于VCS 。您可能想要查找白皮书,并查看其依据。


编辑:请注意,我并不是说Mercurial不能做任何事情,只是针对带有Eclipse的Java-这是我们的主要重点-目前,即使在Windows下,git的市场力量也是最强的,我们需要站在肩膀上其他人,而不是他们的脚。


5
+1全部在分支中。分析讨论了git与mercurial的合并能力。
Amelio Vazquez-Reina

19
@AmV:请不要发布混淆的URL。
科迪·格雷


4
我不确定在这里是否明白你的意思。您是说他们同样擅长分支(Git做Mercurial不能做的任何事情),但是因为您需要良好的分支,所以选择了Git?
jalf

8
我从未见过任何令人信服的例子,说明Git如何比Mercurial更好地进行合并,当然在这个答案中也没有。几乎就像您将Hg与SVN或CVS混淆了一样。
亚伦诺特,2011年

23

我不打算说为什么git或mercurial更好,也不说它是受欢迎的唯一原因,而是将重点放在社区上。

正如我之前强调的那样,Git社区非常喧嚣和自大。大多数人将大力捍卫自己的宝贵程序。我见过的大多数Git与Mercurial战争都是由git人开始的,他们想知道为什么地球上的每个人都没有使用圣洁的git。诸如whygitisbetterthanx.com之类的网站甚至在引言中也显示了这种傲慢,而引言是为诱饵他人而写的。

我并不是说每个人都是这样,但是在大多数情况下,当我遇到git人,pro-git网站和pro-git博客时,我觉得git被推到了我的喉咙,而不是作为可行的DVCS提供系统。


相比之下,其他DVCS社区则没有那么响亮。直到看到“什么是最好的DVCS?”,我才知道Mercurial的存在。关于SO的问题。虽然git随处可见,但其他DVCS却需要一些时间才能找到。


16
难道叫别人嚣张有点自大吗?

21
@Thorbjørn:是的。除了我什么时候做;那是正确的。
汤姆·安德森

6
我认为您对git过敏了。我已阅读了为什么要介绍其成分及其一些内容。我没有看到任何傲慢或挑衅的东西。它只是正常偏见,任何旨在促进某件事的东西都有。
back2dos

5
@ back2dos:这很自大,因为它声称“ Git比一切都好”。在其大量支持性论证中,要么是错误的,未经纠正的,要么是被划掉了,但它却以某种方式永远不会改变他们的结论。
jalf

5
@Agos:几乎所有这些都不是Git独有的。他们只是移动球门柱,以排除其他产品。
亚伦诺特,2011年

14

我认为Mercurial并不是特别低调。Kiln建立在Hg之上,并且一段时间以来在Eclipse和Netbeans等IDE中都提供了良好的支持。

与我交谈的大多数开发人员似乎更喜欢Hg,因为它们对Windows的支持更好。如果我们是Linux开发人员,那么情况可能会不同。

您还缺少真正的“被遗忘的DVCS”“市集”。

当然,我同意Linus是一个非常有魅力的人,并且是一个几乎没有平等的书呆子书呆子,因此很多人会选择Git。此外,Git的“创造神话”非常令人信服,Linus辛苦工作了6天来创建Git并停留在第七个-或类似的东西上。当产品具有令人难忘的故事时,更容易吸引人。


6
...完全同意:“集市”是真正的“被遗忘的DVCS”。
dagnelies 2011年

同意,但是窑/ jo的汞暴露比莱纳斯的git暴露最近。hg正在追赶
jk。

2
实际上有很多“被遗忘的DVCS”,尽管其中许多可能被更好地描述为“低调”,“专注”或“利基”。
约翰·盖恩斯(John Gaines),

13

这是一个卑鄙的见解,但是由于两个参数,git可能会引起所有这些炒作:

  1. 非常有效
  2. 使用很有趣(以某种非常特定的计算机科学家方式使用)

另外,git有一些像github这样的杀手级应用,一些非常受欢迎的项目决定使用它,这给了它很大的知名度。


4
1.在某些地方水银效率低下吗?实际上,很长一段时间以来,它在http上的效率更高,这就是为什么Google代码将它包含超过2年的原因,与上周宣布的git支持相比,最近才在http上变得同样好。2.好3.有一个等效的bitbucket.org
dagnelies

1
我是说水银效率低下吗?我没用过,所以我可以说出来。
Thibault J

4
这根本无法解决问题,恕我直言,至少没有解决“而其他没有”的问题
jk。

1
Mercurial无法将“空文件夹”添加到存储库中(如果现在已解决,则不知道),但是当我不得不选择DVCS时,最终我为此选择了git。我需要一些空文件夹。
Martin Marconcini

4
@MartínMarconcini“我最终为此目的而使用git”是什么意思?git也不支持空文件夹。
Max Nanasy

12

这里有三个因素在起作用,“ beta极客媒体”,“时间合适”和“跟随领导者”

Beta Geek Media

有许多渠道可以讨论“怪异活动”。他们当然会介绍新版本控制系统的外观,但会介绍更多git。为什么?因为莱纳斯·托瓦尔兹(Linus Torvalds)最初是写它的,所以公开讨论它,并以此作为他广为人知的关于bitkeeper的问题的解决方案。实际上,每当对lkml发生战争时,beta极客媒体都会写一篇有关它的文章。Git的讨论从lkml开始,因此它比其他替代品有更多的报道。和谁读公测爱好者Slashdot的喜欢它的品种吃起来。最终的结果是git的文章数量是mercurial的十倍。

时间合适

具有大量贡献者的大型开源项目在集中式源代码控制方面存在问题。随着开源的发展,项目变得越来越有可能有许多贡献者,问题变得更加严重。Linux可能是受此影响最广为人知的项目,但还有很多其他项目。随着许多项目达到这一点,需要某种高级VCS。Git,Mercurial和Bazaar是这里的大赢家。Arch和Monotone都还为时过早,错过了宣传浪潮。

听从领队

大型项目的追随者会定期检出并构建代码,即使他们没有贡献。追随者熟悉了获取他们追随的项目所需的工具,因此这些工具得到了更多的使用。让我们看一下三大DVCS的“大抽奖”项目:

  • Git:Linux,Perl,jQuery,Ruby on Rails,Eclipse,Gnome,KDE,QT,X
  • Mercurial:Java,Mozilla,Python
  • 集市:Ubuntu,Emacs

Git有更多使用它的“大抽奖”项目,因此,更多的人熟悉git,编写了更多的git教程。


1
您可能是正确的,但是您的“大抽奖”列表有点误导/偏见。在Bazaar网站上,他们列出了许多其他主要项目:MySQL,Bugzilla,Debian,GNU似乎都广为人知。汞清单也更大。
jalf

@jalf:这样的列表必须是主观的。我已经编译了自己的Linux和Gnome,但是从未编译过Mozilla或Emacs。其他人可能恰恰相反。问题实际上是“有多少人将从源代码管理中拉这个项目”?我列出了那些最有可能激发人们安装vcs来拉动当前资源的文件。
肖恩·麦克米兰

很公平。我以为这是一个客观清单的尝试(毕竟,使用每个DVCS系统的主要项目清单应该很容易找到):)
jalf

12

这主要是自我强化的炒作。Git是最受欢迎的,因此它获得了最多的宣传,从而使其越来越受欢迎。

Git,Hg和Bzr都是完美的DVCS系统,但是有很多人将DVCS与Git相提并论,他们认为DVCS的所有可爱功能都是Git独有的。因此,他们使用Git并推荐Git,并说“ Git更好,因为它可以完成章鱼的合并”(Bazaar也可以),或“ Git更好,因为它是分布式的”(任何 DVCS也是如此))或“ Git更好,因为它使分支和合并变得容易”(同样,每个DVCS都是如此)。

令人遗憾的是,因为我认为替代方案也有很多选择,我宁愿人们选择Git是因为其独特的优势,而不仅仅是因为他们认为DVCS == Git。

当某人通过指向一个特定的DVCS发现聪明的DVCS时,他们常常不去告诉别人“嘿,DVCS很好,您应该使用它们”,而是“ 我所使用的DVCS”。很好地了解了DVCS,您应该使用它。”


11

Github。Github是社交编码的先驱。它将版本控制转变为吸引了很多关注的社交平台,并且显然仅支持Git。社交媒体=更大的采用率。尽管有很多新功能,但Bitbucket仍在不断增长,使其有可能成为竞争对手:)


7

好吧,事实上,我认为所有DSVC的宣传都是如此。

但是git的拥护者只是更加直言不讳,在坦率地说他们的评论中常常更具攻击性,并且喜欢到处谈论它。

我怀疑Mercurial被广泛使用,肯定是git,甚至更多(微软和其他大公司现在都在使用),但是使用Mercurial的人们通常只是希望他们能够快速掌握DSVC,而不是出于某种信仰。因此,与某些git用户一样,他们在讨论中的发言权最低,也比其他人更积极。

Bazaar并没有得到太多讨论,因为只有很少的知名项目使用它,并且除Canonical之外,没有其他大公司使用它。例如,与Google(git,mercurial,svn)和大型开放源代码项目相比,您可以看到为什么没有真正谈论它的原因。Fossil是另一个对众多开发人员来说很有趣的软件,因此我认为仅由那些搜索提供的功能的人(例如嵌入式Wiki,问题跟踪和论坛)来听到他们的声音是正常且正常的。

话虽这么说,但我认为我们正在慢慢地降低炒作周期,许多使用了几种不同解决方案的开发人员可以开始看到一种完全符合他们需求的解决方案。

此外,Google Code Hosting和SourceForge现在同时允许git和mercurial,因此由于GitHub功能,与以前选择git相比,它已成为项目特定的选择。

没有真正的战争,只有各种有趣的工具。


我希望炒作大体上是关于DVCS的,但是从我所看到的一切来看,炒作是关于Git的,而且大多数人认为DVCS和Git本质上是同一回事。
jalf

6

我知道这个问题已经有很多答案了,但是我觉得我可以增加一些看法。

自从Bazaar被创建用于各种事物以来,我就几乎使用它了。我最大的用途是AllTray项目,我(目前)是AllTray项目的唯一开发者和维护者。集市很好。它可以正常工作,不会挡住我的脚步,几乎不需要我在它的--help页或手册页中查看。也就是说,它有一些缺点:

  1. 它具有的许多功能(可以说应该是核心VCS的一部分)并非如此。作为插件提供了诸如执行历史二等分功能,通过寻呼机运行长输出或具有“共置”分支(例如git样式存储库)之类的功能。
  2. 许多插件不是很稳定。例如,共置分支功能在服务器端似乎无法正常工作(至少,我从来没有使它起作用,它往往会错误地指出,给定路径上的分支在存在时不存在就在您面前,您会看到血腥的东西)。
  3. 它没有“克隆”操作,您一次拉一个分支。如果要拥有存储库,则必须做额外的工作,以便可以有效地拉出新分支。
  4. 对于某些项目,它非常缓慢。有时尝试“ bzr分支lp:mysql”。
  5. 它对钩子缺乏强有力的支持;您可以编写提供钩子的bzr插件,但是没有标准的方法来拥有服务器端的任意钩子脚本。

我最近切换到git进行AllTray开发,并且很快考虑将所有项目迁移到git。花费了更多的前期时间来了解绳索,但这似乎是值得的。我注意到的一些事情:

  1. git clone 这是一个相对较快的操作,它为您提供了有关克隆的存储库中存在的所有分支的信息。
  2. 添加其他远程存储库很容易,因此您可以根据需要跟踪具有多个分支的许多不同存储库。
  3. 临Git的书是可在网上和多种格式,包括电子书阅读器设备和它不是一个很难读。
  4. git似乎比Bazaar扩展容易得多,并且您不必使用任何一种特定的API来进行扩展。(注意:这既有好处也有缺点。)
  5. git内置有bisection,我不能强调该功能的实用性。
  6. GitHub相当不错。
  7. gitosis系统也相当不错。除了在Bazaar中作为插件外,我什至不知道该如何实现它,我无法想象它会达到什么效率。

长话短说:我已经使用bzr很长时间了,但是git很快向我证明了它的威力。


5

使用git时,您在进行开发时往往总是留在同一本地目录中,而只是git checkout branchname在分支之间进行切换(我一直使用“轻量”功能分支,因此这对我来说是非常重要的功能)。

查看Mercurial文档和教程,似乎处理不同开发分支的首选方法是通过克隆来创建新的存储库。本教程是一个示例。

我相信您可以在Mercurial中执行与git中相同的操作,但是由于某些原因,Mercurial文档(我已阅读)几乎总是通过创建存储库克隆来显示分支。

(我每天都使用git。我对水银的使用经验很少,我玩过它,并遵循了一些教程)


2
我一直在使用hg中的“命名”分支。它很好地支持了他们。hg branch foo,然后hg up foo稍后...分行克隆对于常规开发有一些强大的弱点。
保罗·内森

嗯,所以您是说Git比Hg好,因为虽然Hg支持您关注的功能,但Hg社区认为替代方法更好吗?
jalf

1
1:我想知道:为什么在Hg文档中重点关注“通过克隆进行分支”(例如,请参见hgbook.red-bean.com/read/a-tour-of-mercurial-the-basics.htmlmercurial.selenic。 com / guide)?对我来说,每个分支只有一个存储库似乎很麻烦。2:我并不是说git更好,我的回答更多是关于一个对我(汞新手)而言似乎两者之间存在差异的问题。差异似乎比技术上更具文化意义,因为Hg还支持“在同一存储库中分支”。
codeape 2011年

3
Mercurial在网上遭受了大量过时的信息纠缠。很多它是由使用git的人传播的,并且随着其发展,他们并没有跟上最新的功能。大多数喜欢克隆存储库的旧原因不再适用于现代版本的mercurial(现在可以关闭已命名的分支,并且如果需要,可以使用书签系统为git分支提供类似的使用模式)。
斯蒂芬·雷德

4

我不知道最近几周见过多少这样的人,但他们似乎都认为Mercurial和/或Bazaar在客观上要比Git好。可用性似乎是一个常见的主题。是的,在使用CVS和Subversion之后,学习Git令人惊讶地困难,但是在这一点上,我不希望将其替换为任何其他VCS,除非它构成了另一个范式转换。指向功能表将很少告诉我它的灵活性,可扩展性,安全性或轻松程度。例如,默认情况下 git-diff使用颜色和寻呼机。当然,我可以得到相同diff ... | colordiff | less -R或类似的东西,但是显而易见的是,为什么一个优于另一个。


我不认为您应该因此进行切换-显然,使用您已经知道的工具比切换到另一工具更容易,无论另一工具多么容易。我认为没有任何DVCS支持者会真的声称您因为使用git而不是Bazaar或Mercurial而错过了很多钱,所以两者之间没有太多。
ZoFreX 2011年

3

公平地说,我认为git vs. Merurial的拥护者与git vs. Centralized拥护者相比很少。但是,原因很容易总结:

Git是程序员的版本控制。Mercurial是企业的版本控制。集中化是发明版本控制的充分尝试,尤其是考虑到它是在个人计算机革命之前设计的。

我对程序员的版本控制的意思是,通常,程序员倾向于灵活性而不是易于学习。毕竟,我们愿意花数年的时间学习深奥的语言,以便灵活地使计算机完成未经培训的工作。Git为程序员提供了随心所欲使用它的灵活性,但要花更多的时间来学习如何安全地使用这种灵活性。它允许对实施策略施加限制,但并非开箱即用。请注意我说的便于学习,而不是方便的使用。一旦学习了它,git就和其他任何VCS 一样容易使用,并且由于速度和功能的提高而通常更容易使用。

一些程序员学到了足够的知识去做自己想做的事,然后拒绝学习新的做事方法。企业雇用并雇用了许多此类人员,因此他们希望对所使用的工具进行任何更改以使其具有一定程度的熟悉度。企业还希望程序员拥有足够的灵活性来完成工作,但又不至于使培训或初始迁移变得困难。这就是Mercury所适合的地方。它具有git的大部分功能,但迁移路径较为简单。

我认为说git仅因炒作或Linus的认可而受欢迎并不公平。这可能是许多尝试它的人的原因,但他们坚持并推广它,因为它对他们很有效,纯净而简单。




1

我最近正在寻找用于个人项目的版本控制系统,因此我只尝试了其中的一些。我实际上在命令行上是文盲,并且听说虽然可以使用GUI,但确实打算通过命令行使用Git,这让我有些犹豫。坦白说,很容易拿起,我真的很喜欢。文档是采用新技术的一个重要因素,Git拥有大量清晰易懂的可笑的简单文档。诸如SVN和Bazaar之类的其他替代产品也很棒,它们只是没有像Git那样简单。Github也是一个重要因素,因为它在当前的开源运动中变得如此重要。具有(具有讽刺意味的)集中位置来交换代码和项目,这本身就是游戏规则改变者。


1

只是我的2¢-我选择git而不是其他选项,因为它是用C而不是radtool语言或过于学术化的高级语言编写的。好处是它快速高效,如果遇到无法解释的错误或行为,我可以实际使用RTFS。它还使它可以在不包含巨大的解释器/运行时的小型自托管开发环境中使用,这意味着我可以直接从git repo中提取并在此类系统上进行编译,而不必在其他地方获取最新资源并进行rsync。


1
这也是为什么我选择git的原因,因为它是用编译语言而不是python编写的,因此我可以在USB笔中随身携带git的便携式版本以及其他一些工具。
Coyote11年

但是,这恰恰是Facebook选择使用Mercural的原因:他们对两者的性能都不满意,但是发现提高Mercural的性能更容易(对于大多数运营而言,这只比其慢一小部分)由signficant裕顺位)的Git(这是他们做的与文件监控服务整合,以便它可以告诉有什么事情,不能改变了,在这里看到的细节),因为一个事实,即蟒蛇是比单纯的C.工作
Jules

1

您可能想读一读为什么GNOME桌面项目决定从几年前的svn迁移时选择git而不是hg和bzr。当然,在此过程中进行了许多激烈的宗教讨论,但此GNOME Wiki页面很好地总结了应用于特定社区的利弊。


0

更不用说Apple现在已经参与将其推向目标c社区,如果您最近在Xcode 4中创建了一个新应用程序,您会注意到它会自动询问您是否要创建Git存储库。

公认的Xcode 4才发布了几个月,并没有影响Gits之前的成功,但是我们都知道Apple可以在短时间内使事物变得流行。


-1

我目前正在从汞(窑)切换到git(github)。我现在已经使用窑炉大约一年了。对我来说,汞没有缺点。我可以做我必须做的一切。太好了

我为什么现在使用?

目前只有三个原因。

  1. gitHub提供了很棒的要点
  2. gitHub具有强大的社交功能
  3. 在进行开发人员演示和研讨会时,我总是将样本发布在hg和git上。在git上,我的访客比在gh上的访客多10倍!

我认为第三个是最重要的。

索斯滕


-2

我想,纯粹的运气,直到现在几乎无法证明为什么某些东西起作用而其他东西没有起作用。Linus可以建立其他壮观的东西,但不会成功。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.