Rozdíl mezi Git a SVN

Git vs SVN

Git a SVN jsou oba software. Git je SCM, správa zdrojového kódu a distribuovaný kontrolní kontrolní systém. SVN je systém kontroly verzí a verzí softwaru.

 Git je SCM s hlavním důrazem na rychlost. Byl vyvinut pro linuxové jádro Linusem Torvaldsem. Má úložiště s kapacitami pro sledování revizí a úplnou historii. Toto úložiště není závislé na centrálním serveru nebo přístupu k síti. Je to svobodný software. Git je distribuován pod GNU a na jeho údržbu dohlíží Junio ​​Hamano. Apache Subversion neboli SVN je distribuován pod licencí open source. Je to nedistribuovaný VCS, systém pro správu verzí. Nemá úložiště, které je centralizované nebo centralizované. Používá se hlavně pro údržbu historických a současných verzí zdrojového kódu, dokumentace a webových stránek. Hlavním cílem SVN je použití jako nástupce CVS, Concurrent Version System. Byl vyvinut společností CollabNet, Inc.

 Obsah uložený v Gitu je metadata. Ukládá obsah do složky nazvané .git, která má větší velikost. Složka .git ve stroji je klonovaným úložištěm. Složka se skládá ze všech značek, historie verzí, větví atd., Jako v centrálním úložišti; SVN ukládá soubory. Nemají klonované úložiště.

 S větvemi Git se snáze pracuje. Systém pomáhá při rychlém sloučení souborů a také při hledání nečleněných souborů; větve SVN jsou ve skutečnosti složkou přítomnou v úložišti. Pro sloučení větví jsou vyžadovány speciální příkazy.

 SVN má globální číslo revize, číslo revize je snímek záběru zdrojového kódu; Git to nemá.

 Git obsahuje obsah, který je kryptograficky hašován. To se provádí pomocí algoritmu označovaného jako hashovací algoritmus SHA1. Tato funkce pomáhá chránit obsah před poškozením úložiště, ke kterému dochází v důsledku problémů se sítí nebo selhání disku.

Souhrn:

  1. Git je distribuovaný VCS; SVN je nedistribuovaný VCS.
  2. Git má centralizovaný server a úložiště; SVN nemá centralizovaný server nebo úložiště.
  3. Obsah v Gitu je uložen jako metadata; SVN ukládá soubory obsahu.
  4. S větvemi Git je snadnější pracovat s větvemi SVN.
  5. Git nemá funkci globálního čísla revize, jakou má SVN.
  6. Git má lepší ochranu obsahu než SVN.
  7. Git vyvinul pro linuxové jádro Linus Torvalds; SVN byl vyvinut společností CollabNet, Inc.
  8. Git je distribuován pod GNU a na jeho údržbu dohlíží Junio ​​Hamano; Apache Subversion neboli SVN je distribuován pod licencí open source.