git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
shinemoon
V2EX  ›  git

[求教] git相对hg来说的优势究竟在哪里

  •  
  •   shinemoon · Jan 17, 2013 · 11140 views
    This topic created in 4876 days ago, the information mentioned may be changed or developed.
    几年前因为无意中接触到bitbucket, 作为业余玩票编程者就顺手上了hg的船(如果没有记错,当时它金仅仅提供hg的服务),而且一直比较顺手的用到了现在: 平时工作环境是Windows和Linux都会用到。

    但是,现在有意无意的,git的声势似乎远远强于hg,就从V2EX的相关节点热度也看得出来,所以虽然依然hg用的很欢乐,不过很好奇,如果用不那么文档化的语言来描述,git到底优势在哪里?有哪些应用场景下,git可以带来hg没法做到的好处? 或者说就类似Clearcase & SVN之类,个人玩票的话,后者也足够应付了?
    16 replies    2018-12-05 16:58:12 +08:00
    yegle
        1
    yegle  
       Jan 17, 2013
    应该说,github到底有什么优势

    当你使用的绝大多数项目都在用github,你可以方便地fork,并方便地将改动反馈到上游,你就离不开它了。所以开源项目首选host在github上的,其次google code(还是有一部分早期的好项目的),再次是sf(超多的老项目一直没动)。bitbucket?自从它家废掉hg.io域名后就不再考虑了,太不靠谱。

    另外早期hg没有真正的branch,需要打开mq extension才能用。不过已经很多年没用了hg,不清楚现在是否已经默认支持
    feilaoda
        2
    feilaoda  
       Jan 17, 2013
    @yegle 现在存放私人代码,还是选择的bitbucket,毕竟免费啊
    开源的基本使用github
    swulling
        3
    swulling  
       Jan 17, 2013
    @feilaoda 恩,但是bitbucket支持git后,,,大家就全用git了
    openroc
        4
    openroc  
       Jan 17, 2013
    rebase
    openroc
        5
    openroc  
       Jan 17, 2013
    lyric
        6
    lyric  
       Jan 17, 2013
    ....楼主明明问的是git vs hg又不是github vs bitbucket

    对我来说嘛,git对大体积二进制文件的支持更好
    shinemoon
        8
    shinemoon  
    OP
       Jan 17, 2013
    @yegle
    @openroc
    以及其余诸位
    感谢细致回答,也大致读了下材料,似乎:

    1. 技术上,Mercurial feels like a “Git Lite“.这句话似乎粗暴但有点道理;
    2. 生态上,似乎git压倒性的占优势,虽然hg对一两个人规模的toy code已经够用了,但是会不会有一天,如果,只是如果bitbucket挂了,哪里还有靠谱的服务提供商?
    BigZ
        9
    BigZ  
       Jan 17, 2013
    无所谓啊,习惯用什么就用什么

    我的个人项目一直用svn呢
    meteor
        10
    meteor  
       Jan 17, 2013
    @yegle 支持。
    技术本身不会竞争。但是用这些技术的人和公司之间有竞争。
    sivacohan
        11
    sivacohan  
    PRO
       Jan 17, 2013 via Android
    我觉得吧。。。
    git呼声高,是因为商业运作。
    我觉得把,版本控制器,主要目标就是易用性,这玩意有必要追求性能吗?
    git用c写的,hg是python
    在你提问之前,我一直猜测v2ex上用hg的会不会比git多,理由是可定制性。
    luikore
        12
    luikore  
       Jan 18, 2013
    以前用google code还真被hg处理大文件的卡弄得很郁闷过,不知道现在好了没
    bitbucket的免费私有空间好久没碰过了...

    已经不会hg了... 有什么地方可定制性比git好,举个例子?

    p.s. 现在对没注册到gitbucket和bithub这两个域名感到很后悔
    amio
        13
    amio  
       Mar 18, 2013
    @luikore bithub还不错,gitbucket有点奇怪
    yegle
        14
    yegle  
       Mar 27, 2013
    最近工作需要用了一段时间hg,似乎hg没有纯粹的local branch,任何branch只要在本地commit过,push时就必须要在中心服务器建立同样的分支

    如果确实是这样的话(hg新手,不确定是否确实这样),至少有两种开发模式就没法进行了:
    1. 本地建立分支试错
    2. 本地branch开发,定期merge到develop分支

    用了一下hgflow这个照搬git flow的玩意儿,发现这个模式实在是奇怪,branch一旦commit后就很难删除,重得跟SVN一样,每次建branch都要考虑是不是真的需要。git下的分支就轻很多,不用了可以轻松抹去分支

    另外,用久了之后发现为feature分支想一个合适的名字太难…
    shinemoon
        15
    shinemoon  
    OP
       Mar 27, 2013
    @yegle 同新手,作为Branch的确让我有时候也比较困惑...定期merge倒是没问题,关键是怎样drop掉不用的临时branch? 强迫症的本人表示看到那些枝桠很纠结。
    jogin
        16
    jogin  
       Dec 5, 2018   ❤️ 1
    git,svn,hg 都使用过。
    hg 是我使用过最垃圾,最难用的 SCM 工具,极其笨重,功能不健全,分支管理非常不方便,分支线路错综复杂,经常 crash。我实在不明白这种玩具一样的破烂玩意,竟然也能跟 git 相提并论,并且还会有公司在内部推广使用,个人认为不论是私人工程还是团队工程都应该避免使用 hg,因为你在使用之后就会发现,日常跟 hg 耗的功夫就会占用你 70%的时间。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1415 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 67ms · UTC 23:58 · PVG 07:58 · LAX 16:58 · JFK 19:58
    ♥ Do have faith in what you're doing.