Gleiche Ara, andere Asthetik
Git und Mercurial wurden beide im April 2005 veroffentlicht.
Git's Haltung: Macht, Kanten, dem Benutzer vertrauen
Git legt seine Internals offen.
Mercurial's Haltung: Sicherheit, Konsistenz, Konservatismus
Mercurial verbirgt Internals aggressiver.
Das Branch-Modell
# Mercurial: named branches are permanent
hg branch feature/login
hg commit -m "Start work"
# Mercurial: bookmarks are like Git branches
hg bookmark feature/login
hg commit -m "Start work"
hg bookmark -m feature/login feature-rename
# Git: branches are mutable pointers
git checkout -b feature/login
git commit -m "Start work"
git branch -m feature-rename
Die CLI-Erfahrung
Mercurials CLI ist einheitlicher.
Geschwindigkeit
Beide Systeme sind auf typischen Projekten schnell.
Erweiterungen und Umfang
Mercurials Erweiterungsmodell ist erstklassig.
Die Frage der Historie-Umschreibung
Beide konnen die Historie umschreiben. Mercurial verweigert standardmassig.
Hash-Funktion
Beide verwenden historisch SHA-1. Git migriert zu SHA-256.
Reale Divergenz
Facebook (jetzt Meta), einer der grossten Mercurial-Nutzer, hat es fur Monorepo-Skala geforkt und Sapling gebaut.
Warum Okosystem mehr zahlt als technische Reinheit
Mercurials CLI ist wohl lernbarer. Doch Git gewann Marktanteile, weil GitHub auf Git setzte.
Was von Mercurial mitnehmen
Sichere Defaults bevorzugen, gefahrliche Operationen hinter explizitem Opt-in gateway.