Git i SVN

Anonim

Git vs SVN

Git i SVN są oprogramowaniem. Git to SCM, zarządzanie kodami źródłowymi i rozproszony system kontroli wersji. SVN to kontrola wersji i system wersjonowania oprogramowania.

 Git to SCM, którego główny nacisk kładzie się na szybkość. Został opracowany dla Linuksa przez Linusa Torvaldsa. Ma repozytorium z możliwościami śledzenia wersji i pełną historią. To repozytorium nie zależy od centralnego serwera lub dostępu do sieci. To jest wolne oprogramowanie. Git jest dystrybuowany pod GNU, a jego utrzymanie jest nadzorowane przez Junio ​​Hamano. Apache Subversion lub SVN jest rozpowszechniany na licencji open source. Jest to niepodzielony system kontroli wersji VCS. Nie ma repozytorium, które jest scentralizowane lub scentralizowanym serwerem. Jest używany głównie do przechowywania historycznych i aktualnych wersji kodu źródłowego, dokumentacji i stron internetowych. Głównym celem SVN jest wykorzystanie jako następcy CVS, Concurrent Version System. Został opracowany przez CollabNet, Inc.

 Treści przechowywane w Git są metadanymi. Przechowuje zawartość w folderze o nazwie.git, który ma większy rozmiar. Folder.git w komputerze jest sklonowanym repozytorium. Folder składa się ze wszystkich tagów, historii wersji, gałęzi itp., Podobnie jak w centralnym repozytorium; SVN przechowuje pliki. Nie mają sklonowanego repozytorium.

 Oddziały Git są łatwiejsze w obsłudze. System pomaga w szybkim łączeniu plików, a także pomaga w znalezieniu niezmienionych plików; gałęzie SVN są w rzeczywistości folderem obecnym w repozytorium. Do scalania oddziałów wymagane są specjalne polecenia.

 SVN ma numer wersji globalnej, numer wersji jest snapem kodu źródłowego; Git tego nie ma.

 Git ma zawartość, która jest kryptograficznie mieszana. Odbywa się to za pomocą algorytmu określanego jako algorytm skrótu SHA1. Ta funkcja pomaga chronić zawartość przed uszkodzeniem repozytorium z powodu problemów sieciowych lub awarii dysku.

Streszczenie:

  1. Git jest rozproszonym VCS; SVN jest nie dystrybuowanym VCS.
  2. Git ma scentralizowany serwer i repozytorium; SVN nie ma scentralizowanego serwera lub repozytorium.
  3. Treść w Git jest przechowywana jako metadane; SVN przechowuje pliki treści.
  4. Oddziały Git są łatwiejsze w pracy niż gałęzie SVN.
  5. Git nie ma funkcji numeru globalnej rewizji, takiej jak SVN.
  6. Git ma lepszą ochronę zawartości niż SVN.
  7. Git został opracowany dla Linuksa przez Linusa Torvaldsa; SVN został opracowany przez CollabNet, Inc.
  8. Git jest dystrybuowany pod GNU, a jego konserwacja nadzorowana przez Junio ​​Hamano; Apache Subversion lub SVN jest rozpowszechniany na licencji open source.