Subversion

Subversion
Logo Subversion
Logo programu
Autor Program budowany przez społeczność
Pierwsze wydanie 2000-10-20 20 października 2000(dts)
Platforma sprzętowa wieloplatformowy
Rodzaj system kontroli wersji
Licencja Apache License 2
Strona internetowa

Subversion (znany również jako SVN) – system kontroli wersji, który powstał w celu zastąpienia CVS. Z założenia SVN jest w większości przypadków funkcjonalnie zgodny ze swoim poprzednikiem, z kompatybilności zrezygnowano tam, gdzie było to niezbędne do wprowadzenia nowych rozwiązań. SVN jest wolnym i otwartym oprogramowaniem na licencji Apache.

Zmiany w stosunku do CVS

Historia zmian nazw katalogów i plików

Brak historii wprowadzanych zmian nazw katalogów był jedną z najczęściej krytykowanych wad CVS. Subversion zapisuje nie tylko zawartość pliku oraz informacje, czy dany plik istnieje, ale także położenie pliku w katalogach, jego kopie, zmiany nazw. Pozwala również zapamiętywać właściwości danego pliku lub katalogu, np. flagi wykonywalności.

Zmiany są transakcjami atomowymi

Zmiany w kilku plikach lub katalogach odnoszą skutek tylko wtedy, gdy wszystkie modyfikacje zostały zakończone pomyślnie. W CVS możliwa była sytuacja, gdy część plików została zaktualizowana, a część nie, np. w przypadku zerwania połączenia sieciowego.

Możliwość użycia serwera Apache

Subversion może używać protokołu bazującego na HTTP – WebDAV/DeltaV do komunikacji sieciowej, serwer webowy Apache zapewnia dostęp do sieci po stronie repozytorium. To daje Subversion przewagę nad CVS i wprowadza za darmo ważne funkcje takie jak: uwierzytelnianie i autoryzację użytkowników, kompresję przesyłanych danych oraz podstawowy dostęp do repozytorium.

Dostępny samodzielny serwer

Subversion umożliwia dostęp do repozytorium przez dedykowany serwer, niezależny od serwera http. Jest on uruchamiany jako usługa inetd lub oddzielny demon. Oferuje on podstawowe uwierzytelnianie i autoryzację użytkowników. Umożliwia także tworzenie połączeń szyfrowanych.

Szybkie tworzenie gałęzi i znaczników

W odróżnieniu do CVS, gdzie dodawanie gałęzi (branches(inne języki)) i znaczników (ang. tags) z powodu organizacji mogło być czasochłonne, w SVN operacje te bazują na szybkim kopiowaniu – kopie zajmują małą, stałą przestrzeń.

Pozostałe funkcje

  • Własny protokół klient/serwer.
  • Protokół umożliwia przesyłanie różnic w plikach od klienta do serwera i odwrotnie.
  • Rozmiar przesyłanych danych przy zmianie pliku jest proporcjonalny do rozmiaru zmian, a nie pliku.
  • Efektywna obsługa plików binarnych.
  • Repozytorium przechowywane w bazie danych lub w systemie plików.

Linki zewnętrzne

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.