Mercurial vs. Git

Git a Merkurial jsou oba bezplatné softwarové nástroje pro GitMerkurialVestavěný webový server Ne Ano Háčky před / po události Ano Ano Konverze na konci řádku Ano Ano Značky Ano Ano Mezinárodní podpora Částečný Ano Přejmenování souborů Ano (implicitní) Ano Sloučit přejmenování souborů Ano Ano Symbolické odkazy Ano Ano Otevřený zdroj Ano Ano Podepsané revize Ano Ano ID revize SHA-1 hashe Čísla, hash SHA-1 Atomové závazky Ano Ano Historický model Momentka Changeset Velikost úložiště O (patch) (Big O notation) O (patch) (Big O notation) Souběžný model Spojit Spojit Operační systémy Unixové, Windows, Mac OS X Unixové, Windows, Mac OS X Pracovní plocha Ano Ne Externí větev Ano Ne Náklady Volný, uvolnit Volný, uvolnit Klíčové slovo RCS Ano, ale nedoporučuje se prostřednictvím přiloženého pluginu Mělká pokladna / klon Ano Rozšíření bugzilly Sledování názvu souboru / adresáře Přejmenovat detekci Přejmenovat sledování Podadresář pokladna / klonování Ne Ne Model úložiště Distribuováno Distribuováno Zachování povolení Pouze prováděcí bit Pouze prováděcí bit Síťové protokoly custom, custom over ssh, rsync, HTTP, e-mailové balíčky HTTP, vlastní přes ssh, e-mailové balíčky (se standardním pluginem) Vyvinutý Junio ​​Hamano, Linus Torvalds Matt Mackall Udržováno Junio ​​Hamano Matt Mackall Napsáno v C, Bourne Shell, Perl Python a C Sloučit sledování Ano Ano Integrace sledování chyb Ne Trac (přes plugin) Licence GPL v2 GPL v2 webová stránka git-scm.com www.selenic.com/mercurial OS POSIX, horší podpora Windows Unixové, Windows, Mac OS X Úvod (z Wikipedie) Git je bezplatná distribuovaná kontrola revizí nebo projekt správy zdrojového kódu softwaru s důrazem na rychlost. Git byl původně vytvořen Linusem Torvaldsem pro vývoj linuxového jádra. Mercurial je multiplatformní distribuovaný nástroj pro kontrolu revizí pro vývojáře softwaru. Je implementován hlavně pomocí programovacího jazyka Python, ale zahrnuje implementaci binárního rozdílu napsanou v jazyce C. Typ Revizní kontrola Revizní kontrola

Obsah: Mercurial vs Git

  • 1 Návrh cílů
  • 2 Projekty používající Git vs Projekty používající Mercurial
  • Přenositelnost 3 Git vs. Mercurial
  • 4 Uživatelské rozhraní pro Git vs Mercurial
  • 5 Související videa
  • 6 Reference

Cíle designu

Mezi hlavní cíle designu společnosti Mercurial patří vysoký výkon, škálovatelnost, vývoj plně distribuovaného spolupráce bez serverů, robustní manipulace s prostým textem i binárními soubory a pokročilé možnosti větvení a slučování, zatímco zůstávají koncepčně jednoduché. Obsahuje integrované webové rozhraní.

Jedním z klíčových cílů společnosti Linus Torvalds pro Git byla rychlost a efektivita operací. Mezi další kritéria návrhu patřily silné záruky proti korupci, ať už náhodné nebo škodlivé.

Projekty používající Git vs Projekty používající Mercurial

Několik vysoce postavených softwarových projektů nyní používá Git pro kontrolu revizí, zejména linuxové jádro, Perl, Samba, X.org Server, Qt (sada nástrojů), vývoj jádra One Laptop per Child (OLPC), webový rámec Ruby on Rails, VLC , YUI, Merb, Wine, SWI Prolog, GNOME, GStreamer, DragonFly BSD a mobilní platforma Android.

Mezi projekty využívající Mercurial patří Adblock Plus, Aldrin, Audacious, Dovecot IMAP server, GNU Octave, NxOS, Nuxeo, Growl, MoinMoin wiki software, Mozilla, Mutt (e-mailový klient), Netbeans (IDE), OpenJDK, Python, SAGE, Sun Microsystem's OpenSolaris a Oracle's opensource software jako Btrfs.

Přenositelnost Git vs. Mercurial

Mercurial byl původně napsán pro běh na Linuxu. Byl přenesen do Windows, Mac OS X a většiny ostatních unixových systémů. Mercurial je především program příkazového řádku.

Git je primárně vyvíjen na Linuxu, ale může být použit na jiných unixových operačních systémech včetně BSD a Solaris.

Git také běží na Windows. Existují dvě varianty:

  • Blíží se dokončení nativního portu systému Microsoft Windows s názvem msysgit. Od února 2009 jsou připraveny ke stažení instalační programy ke stažení. Některé příkazy ještě nejsou k dispozici z GUI a musí být vyvolány z příkazového řádku..
  • Git také běží na vrcholu Cygwin (emulační vrstva POSIX), i když je to výrazně pomalejší, zejména pro příkazy psané jako shellové skripty.

Uživatelské rozhraní pro Git vs Mercurial

Všechny operace Mercurialu jsou vyvolávány jako volby klíčových slov v jeho ovladačovém programu hg, odkaz na chemický symbol prvku rtuti. Rozhraní GUI pro Mercurial zahrnují Hgk (Tcl / Tk). Toto je implementováno jako rozšíření Mercurial a je součástí oficiální verze. Tento prohlížeč zobrazuje směrovaný acyklický graf changesetů úložiště Mercurial. Tento prohlížeč lze vyvolat příkazem 'hg view', pokud je rozšíření povoleno. hgk byl původně založen na podobném nástroji pro git zvaném gitk. Existuje náhrada hgk s názvem hgview, která je psána v čistém pythonu a poskytuje jak gtk, tak qt rozhraní.

Související nástroje Mercurial zahrnují:

  • Související nástroje pro sloučení zahrnují (h) gct (Qt) a Meld.
  • Rozšíření převodu umožňuje import z CVS, Darcs, git, GNU Arch, Monotone a Subversion repozitářů.
  • Netbeans IDE podporuje Mercurial od verze 6.
  • Tortoise Hg poskytuje uživatelsky přívětivé rozhraní pro Windows, pravé tlačítko myši.
  • VisualHG je plugin poskytovatele řízení zdroje Mercurial pro MS Visual Studio 2008.
  • Mercurial Eclipse je plugin poskytovatele týmů Eclipse pro Eclipse 3.3 a novější.

Alternativy pro spuštění Gitu pomocí GUI zahrnují:

  • git-cvsserver (který emuluje server CVS umožňující použití klientů Windows CVS)
  • Klient Git založený na Eclipse IDE, založený na čisté implementaci interních prvků Git v Javě: egit
  • Podpora NetBeans IDE pro Git je ve vývoji.
  • Rozšíření Windows Explorer (TortoiseCVS / TortoiseSVN-lookalike) bylo spuštěno v TortoiseGit a Git Extensions, což je rozšíření průzkumníka, stejně jako samostatné GUI a Visual Studio 2008 Plug-in

Související videa

Reference

  • wikipedia: Git_ (software)
  • wikipedia: Mercurial_ (software)
  • Vývojář Mercurial Martin Geisler porovnávající vlastnosti hloubky Git a Mercural