隨着Phil Haack和其他人最近在關注CodePlex's move to support Mercurial作爲DVCS,我認爲這可能值得一看。Mercurial如何對付GIT和SVN?
作爲目前在辦公室使用SVN進行個人項目和TFS的人員,Mercurial在可用性,功能以及哪些更好的Mercurial託管服務方面進行了比較?
隨着Phil Haack和其他人最近在關注CodePlex's move to support Mercurial作爲DVCS,我認爲這可能值得一看。Mercurial如何對付GIT和SVN?
作爲目前在辦公室使用SVN進行個人項目和TFS的人員,Mercurial在可用性,功能以及哪些更好的Mercurial託管服務方面進行了比較?
至於比較的Git,谷歌最近發佈的基於他們的評價Git和水銀的一個有趣的比較:在谷歌相比,沒有提到http://code.google.com/p/support/wiki/DVCSAnalysis
完美。這是我需要的一切。感謝您的提示,@Dave Ward。 – 2010-01-24 08:25:21
請注意,此分析已過時,例如Git不久前收購了對「智能」HTTP傳輸的支持。 – 2010-01-24 18:24:45
一些更新的東西已經過時:mercurial現在也已經發生了變形(不再是git的優勢); git-gc現在有點自動化(不再是一個有意義的hg優勢),並且windows支持也不太可怕(不確定這仍然是hg的優勢)。當然,微軟已經宣佈他們有意將Git支持集成到他們的TFS產品線中。 – 2013-02-28 13:56:46
一件事是,Git的似乎是要快得多。 Mercurial看起來足夠快(至少有小項目),但Git無論項目規模大小都快如閃電。
關於比較Mercurial和Git - 看到這個問題:Git and Mercurial - Compare and Contrast(和my long answer那裏)。
關於Mercurial與svn的比較 - 看到這個問題:For home projects, can Mercurial or Git (or other DVCS) provide more advantages over Subversion?(理論上這個問題在範圍上是有限的,雖然;我在我的答案中寫了關於Git vs Subversion)。
SVN有很多第三方工具的支持,包括IDE和錯誤跟蹤系統等,包括相當不錯的TortoiseSVN。
大多數開發人員過去都使用過SVN,因此使用SVN可以讓新開發人員加快開發速度。
這種事對你來說有多重要,只有你自己可以決定。
與SVN相比,我最近在一段時間後再次與之合作,Mercurial令人驚歎。它給了我一個「爲什麼會有人使用SVN」的感覺。 SVN非常好,但是Mercurial確實能夠更好地工作。
對於個人項目,我會毫無疑問地切換到DVCS。它完成了SVN所做的一切,但更好,更快。 「學習曲線」只是理解一些術語。
實際上,SVN和DVCS之間的區別在於,每個人在其系統上都有一個完整的工作存儲庫。如果您決定擁有「主服務器」,則它與您所擁有的完全相同,除非它設置爲通過網絡連續提供服務。要同步這些,你所做的就是發送/接收(推/拉)這些存儲庫之間的變化。
這可能只是我,但我已經使用了Mercurial六個月,經過幾年專門使用SVN,出於某種原因,它也不符合我的心智模型。我確切知道我在SVN中做了什麼,如果出現問題,我幾乎總是知道如何解決它。從概念上講,我對Mercurial沒有任何問題 - 例如,我有一個本地版本庫 - 但實際上我總是失去一些東西。我認爲這可能是因爲在SVN中合併是一件大事,而在Hg中這是事情的正常方式。我想更多地控制我的合併。在SVN中,總是清楚哪個變化集先於哪個,但Mercurial似乎缺乏這個。即使是TortoiseHg,這在視覺上也不錯,但似乎並沒有提供足夠的機會來確切地看到合併的內容。
這應該有一個'git'標籤。 – 2010-01-24 08:51:27
@Chad Okere - 夠公平的。完成。 – 2010-01-24 09:00:07
沒有足夠的標籤來完全描述這個問題! D: – Spoike 2010-01-24 09:03:11