Was ist der Unterschied zwischen Mercurial und Git?

Ich benutze Git schon seit einiger Zeit unter Windows (mit msysGit) und ich mag die Idee der verteilten Versionskontrolle. Erst kürzlich habe ich mir Mercurial (hg) angesehen und es sieht interessant aus. Allerdings kann ich die Unterschiede zwischen hg und git nicht ganz nachvollziehen.

Hat jemand einen direkten Vergleich zwischen git und hg gemacht? Ich würde gerne wissen, was hg und git unterscheidet, ohne gleich in eine Fanboy-Diskussion zu geraten.

Lösung

Diese Artikel können helfen:

Edit: Es scheint ein Trend zu sein, Git und Mercurial mit Berühmtheiten zu vergleichen. Hier's ein weiterer:

Kommentare (1)

Irgendwann letztes Jahr habe ich sowohl git als auch hg für meinen eigenen Gebrauch evaluiert und mich für hg entschieden. Es schien mir die sauberere Lösung zu sein und funktionierte damals auf mehr Plattformen besser. Es war aber eher ein Hin und Her.

Seit kurzem verwende ich git wegen git-svn und der Möglichkeit, es als Subversion-Client zu verwenden. Das hat mich überzeugt und ich bin jetzt komplett auf Git umgestiegen. Ich denke, es hat eine etwas höhere Lernkurve (vor allem, wenn man im Innern herumstochern muss), aber es ist wirklich ein großartiges System. Ich werde jetzt die beiden Vergleichsartikel lesen, die John gepostet hat.

Kommentare (1)

Ich bin gerade dabei, von SVN zu einem DVCS zu migrieren (während ich über meine Erkenntnisse blogge, mein erster richtiger Blogging-Versuch...), und ich habe ein wenig recherchiert (=gegoogelt). Soweit ich sehen kann, kann man die meisten Dinge mit beiden Paketen machen. Es scheint, als hätte Git ein paar mehr oder besser implementierte erweiterte Funktionen, Ich habe das Gefühl, dass die Integration mit Windows bei Mercurial ein bisschen besser ist, mit TortoiseHg. Ich weiß, dass es auch Git Cheetah gibt (ich habe beide ausprobiert), aber die Mercurial-Lösung fühlt sich einfach robuster an.

Da beide quelloffen sind (richtig?), glaube ich nicht, dass es bei beiden an wichtigen Funktionen mangeln wird. Wenn etwas wichtig ist, werden die Leute danach fragen, und die Leute werden es programmieren.

Ich denke, dass Git und Mercurial für gängige Praktiken mehr als ausreichend sind. Beide haben große Projekte, die sie verwenden (Git -> Linux-Kernel, Mercurial -> Mozilla Foundation-Projekte, beide neben anderen natürlich), also glaube ich nicht, dass es beiden wirklich an etwas fehlt.

Davon abgesehen bin ich daran interessiert, was andere Leute dazu sagen, denn es wäre eine tolle Quelle für meine Blogging-Bemühungen ;-)

Kommentare (1)