Rozdiel medzi Git a SVN

Git vs SVN

Git a SVN sú softvér. Git je SCM, správa zdrojového kódu a distribuovaný systém kontroly revízií. SVN je systém kontroly verzií a verzií softvéru.

 Git je SCM s hlavným dôrazom na rýchlosť. Bol vyvinutý pre Linuxové jadro Linusom Torvaldsom. Má úložisko s možnosťou sledovania revízií a úplnou históriou. Tento archív nie je závislý od centrálneho servera alebo prístupu k sieti. Je to slobodný softvér. Git je distribuovaný pod GNU a jeho údržbu dohliada Junio ​​Hamano. Apache Subversion alebo SVN sa distribuuje na základe licencie s otvoreným zdrojom. Je to nedistribuovaný VCS, systém riadenia verzií. Nemá úložisko, ktoré je centralizované alebo centralizované. Používa sa hlavne na údržbu historických a súčasných verzií zdrojového kódu, dokumentácie a webových stránok. Hlavným cieľom SVN je používať ho ako nástupcu CVS, Concurrent Version System. Bol vyvinutý spoločnosťou CollabNet, Inc.

 Obsah uložený v službe Git je metadáta. Uloží obsah do priečinka s názvom priečinok .git, ktorý má väčšiu veľkosť. Priečinok .git v stroji je klonovaný archív. Priečinok obsahuje všetky značky, históriu verzií, vetvy atď., Napríklad v centrálnom úložisku; SVN ukladá súbory. Nemajú klonované úložisko.

 S pobočkami Git sa ľahšie pracuje. Systém pomáha pri rýchlom zlučovaní súborov a tiež pri hľadaní nespracovaných súborov; vetvy SVN sú v skutočnosti zložkou nachádzajúcou sa v úložisku. Na zlúčenie vetiev sú potrebné špeciálne príkazy.

 SVN má globálne číslo revízie, číslo revízie je snímka zdrojového kódu; Git to nemá.

 Git obsahuje obsah, ktorý je kryptograficky hashovaný. To sa dosahuje použitím algoritmu označovaného ako hashovací algoritmus SHA1. Táto funkcia pomáha chrániť obsah pred poškodením úložiska, ku ktorému dochádza v dôsledku problémov so sieťou alebo zlyhaniami disku.

Zhrnutie:

  1. Git je distribuovaný VCS; SVN je nedistribuovaný VCS.
  2. Git má centralizovaný server a úložisko; SVN nemá centralizovaný server alebo úložisko.
  3. Obsah v Gite je uložený ako metadáta; SVN ukladá súbory obsahu.
  4. S vetvami Git sa ľahšie pracuje ako s vetvami SVN.
  5. Git nemá funkciu globálneho čísla revízie, akú má SVN.
  6. Git má lepšiu ochranu obsahu ako SVN.
  7. Git bol vyvinutý pre Linuxové jadro Linus Torvalds; SVN bol vyvinutý spoločnosťou CollabNet, Inc.
  8. Git je distribuovaný pod GNU a na jeho údržbu dohliada Junio ​​Hamano; Apache Subversion alebo SVN sa distribuuje na základe licencie s otvoreným zdrojom.