git ja Oikukas ovat molemmat ilmaisia ohjelmistotyökaluja
git
Oikukas
Sisäänrakennettu web-palvelin
Ei
Joo
Ennen / jälkeen tapahtuman koukut
Joo
Joo
Rivin lopputulokset
Joo
Joo
Tunnisteet
Joo
Joo
Kansainvälinen tuki
Osittainen
Joo
Tiedoston uudelleennimet
Kyllä (epäsuora)
Joo
Yhdistä tiedostonimet uudelleen
Joo
Joo
Symboliset linkit
Joo
Joo
Avoin lähdekoodi
Joo
Joo
Allekirjoitetut versiot
Joo
Joo
Versioiden tunnukset
SHA-1-hashes
Numerot, SHA-1-hajautukset
Atomic sitoutuu
Joo
Joo
Historiamalli
kuva
muutosjoukkoa
Varaston koko
O (laastari) (iso O-merkintä)
O (laastari) (iso O-merkintä)
Samanaikaisuusmalli
Yhdistää
Yhdistää
Käyttöjärjestelmät
Unix-tyyppinen, Windows, Mac OS X
Unix-tyyppinen, Windows, Mac OS X
Asuinalue
Joo
Ei
Ulkopuolinen haara
Joo
Ei
Kustannus
Vapaa
Vapaa
RCS-avainsana
Kyllä, mutta ei suositella
mukana toimitetulla laajennuksella
Matala kassalle / klooni
Joo
Bugzilla-laajennus
Tiedoston / hakemiston nimen seuranta
Nimeä tunnistus uudelleen
Nimeä seuranta uudelleen
Alihakemisto kassalle / klooni
Ei
Ei
Varastomalli
Hajautettu
Hajautettu
Luvan pitäminen
Vain suoritusbitti
Vain suoritusbitti
Verkkoprotokollat
mukautettu, mukautettu yli ssh: n, rsync, HTTP, sähköpostipaketit
HTTP, mukautettu yli ssh: n, sähköpostipaketit (vakiolaajennuksella)
Kehittäjä
Junio Hamano, Linus Torvalds
Matt Mackall
Ylläpitäjä
Junio Hamano
Matt Mackall
Kirjoitettu
C, Bourne Shell, Perl
Python ja C
Yhdistämisseuranta
Joo
Joo
Bug Tracker -integraatio
Ei
Trac (laajennuksen kautta)
lisenssi
GPL v2
GPL v2
Verkkosivusto
git-scm.com
www.selenic.com/mercurial
OS
POSIX, huonompi Windows-tuki
Unix-tyyppinen, Windows, Mac OS X
Johdanto (Wikipediasta)
Git on ilmainen jaettu versiohallinta- tai ohjelmistolähdekoodinhallintaprojekti, jossa painotetaan nopeutta. Git on alun perin luonut Linus Torvalds Linux-ytimen kehittämiseen.
Mercurial on monialustainen hajautettu versionhallinnan työkalu ohjelmistokehittäjille. Se toteutetaan pääasiassa Python-ohjelmointikielellä, mutta sisältää binäärisen diff-toteutuksen, joka on kirjoitettu C: llä.
Tyyppi
Versioiden hallinta
Versioiden hallinta
Sisältö: Mercurial vs Git
1 Suunnittelutavoitteet
2 Projektit, joissa käytetään Git vs. Projektit, joissa käytetään Mercurialia
3 Git vs. Merkuriaalinen siirrettävyys
4 Käyttöliittymä Git vs Mercurial -sovellukselle
5 Aiheeseen liittyviä videoita
6 Viitteet
Suunnittelutavoitteet
Mercurialin tärkeimpiin suunnittelutavoitteisiin kuuluvat korkea suorituskyky, skaalautuvuus, palvelimettomuus, täysin hajautettu yhteistyökehitys, sekä teksti- että binaaritiedostojen vankka käsittely sekä edistyneet haarautumis- ja yhdistämisominaisuudet, samalla kun ne ovat käsitteellisesti yksinkertaisia. Se sisältää integroidun verkkoliittymän.
Yksi Linus Torvaldsin keskeisistä suunnittelutavoitteista Gitille oli toiminnan nopeus ja tehokkuus. Muihin suunnittelukriteereihin kuuluivat vahvat suojatoimet korruptiota vastaan, joko vahingossa tai vahingossa.
Git vs. Projektit, joissa käytetään Mercurialia
Useat korkean profiilin ohjelmistoprojektit käyttävät nyt Git-versiota versioiden hallintaan, etenkin Linux-ydin, Perl, Samba, X.org Server, Qt (työkalupakki), yksi kannettava tietokone lasta kohti (OLPC), ydinkehitys, Ruby on Rails -verkkokehys, VLC , YUI, Merb, viini, SWI Prolog, GNOME, GStreamer, DragonFly BSD ja Android-mobiiliympäristö.
Mercurialia käyttäviin hankkeisiin kuuluvat Adblock Plus, Aldrin, Audacious, Dovecot IMAP -palvelin, GNU Octave, NxOS, Nuxeo, Growl, MoinMoin wiki-ohjelmisto, Mozilla, Mutt (sähköpostiohjelma), Netbeans (IDE), OpenJDK, Python, SAGE, Sun Microsystemin OpenSolaris. ja Oraclen Opensource-ohjelmistot, kuten Btrfs.
Git vs. Merkuriaalinen siirrettävyys
Mercurial oli alun perin kirjoitettu toimimaan Linuxissa. Se on siirretty Windowsille, Mac OS X: lle ja useimmissa muissa Unixin kaltaisissa järjestelmissä. Mercurial on ensisijaisesti komentoriviohjelma.
Git on ensisijaisesti kehitetty Linuxissa, mutta sitä voidaan käyttää muissa Unixin kaltaisissa käyttöjärjestelmissä, kuten BSD ja Solaris.
Git toimii myös Windowsissa. On olemassa kaksi vaihtoehtoa:
Alkuperäinen Microsoft Windows -portti, nimeltään msysgit, lähestyy valmistumista. Helmikuusta 2009 lähtien on ladattavia asennusohjelmia testausta varten. Jotkut komennot eivät ole vielä saatavissa käyttöliittymistä, ja ne on käynnistettävä komentoriviltä.
Git toimii myös Cygwinin (POSIX-emulointikerroksen) päällä, vaikka se on huomattavasti hitaampi, etenkin komentotiedostoina kirjoitettujen komentojen osalta.
Käyttöliittymä Git vs Mercurial
Kaikiin Mercurialin toimintoihin vedotaan avainsanavaihtoehtoina kuljettajaohjelmalle hg, viittauksella elementin elohopean kemialliseen symboliin. Mercurialin GUI-rajapinnat sisältävät Hgk (Tcl / Tk). Tämä toteutetaan Mercurial-laajennuksena ja on osa virallista versiota. Tämä katsoja näyttää suunnatun asyklisen kaavion Mercurial-arkiston muutoksista. Tähän katseluohjelmaan voidaan kutsua komennolla 'hg view', jos laajennus on käytössä. hgk perustui alun perin samanlaiseen git-työkaluun nimeltään gitk. Siellä on hgk-korvaus nimeltä hgview, joka on kirjoitettu puhtaana python-muodossa ja tarjoaa sekä gtk- että qt-rajapinnat.
Aiheeseen liittyviä Mercurial-työkaluja ovat:
Liittymiseen liittyviä työkaluja ovat (h) gct (Qt) ja Meld.
Muunnoslaajennus sallii tuonnin CVS-, Darcs-, git-, GNU Arch-, Monotone- ja Subversion-arkistoista.
Netbeans IDE tukee Mercurial-versiota 6.
Tortoise Hg tarjoaa Windows-käyttäjäystävällisen, hiiren kakkospainikkeella olevan valikkoliitännän.
VisualHG on Mercurial-lähteenhallinnan tarjoajalaajennus MS Visual Studio 2008: lle.
Mercurial Eclipse on Eclipse-joukkuetoimittajan laajennus Eclipse 3.3: lle ja uudemmalle.
Vaihtoehtoja Gitin ajamiseen GUI: n avulla ovat:
git-cvsserver (joka jäljittelee CVS-palvelinta, joka mahdollistaa Windowsin CVS-asiakkaiden käytön)
Eclipse IDE -pohjainen Git-asiakasohjelma, joka perustuu Gitin sisäisten laitteiden puhtaaseen Java-toteutukseen: egit
NetBeans IDE -tukea Gitille on kehitteillä.
TortoiseGit and Git -laajennuksissa käynnistettiin Windows Explorer -laajennus (TortoiseCVS / TortoiseSVN-lookalike), joka on tutkimusmatkailijan laajennus sekä erillinen käyttöliittymä ja Visual Studio 2008 -laajennus.
Liittyvät videot
Viitteet
wikipedia: Git_ (ohjelmistot)
wikipedia: Mercurial_ (ohjelmistot)
Mercurial-kehittäjä Martin Geisler vertailee Gitin ja Mercuralin ominaisuuksia perusteellisesti