.

To jest stara wersja strony!


Jak utworzyć repezytorium SVN?

Aby utworzyć nowe, własne repezytorium SVN, należy zalogować się do konta przez SSH i uruchomić polecenie:

svnadmin create /home/UŻYTKOWNIK/KATALOG

gdzie:

  • UŻYTKOWNIK: nazwa użytkownika (tak jak login do konta SSH)
  • KATALOG: katalog dla repezytorium umieszczony na koncie użytkownika

Przykładowo:

mkdir ~/svn
svnadmin create /home/uzytkownik1/svn/projekt1

W efekcie system automatycznie utworzy repezytorium we wskazanym katalog wraz z całą jego konfiguracją. Przed umieszczeniem plików w repezytorium zalecane jest zamknięcie go tylko do wybranych i autoryzowanych użytkowników. Można to zrobić np. dodając odpowiedniego użytkownika z hasłem oraz wyłączając dostęp anonimowy.

Na końcu pliku ~/svn/projekt1/conf/passwd należy dopisać:

admin = haslo123

Następnie w pliku ~/svn/projekt1/conf/svnserve.conf należy zmienić linie:

# anon-access = read
# auth-access = write
# password-db = passwd
# authz-db = authz
# realm = My First Repository

na:

anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = Nazwa repezytorium

oraz do pliku ~/svn/projekt1/conf/authz, na samym końcu dopisać:

[/]
admin = rw

W rezultacie utworzone repezytorium będzie dostępne tylko dla autoryzowanych użytkowników (plik passwd) i ze zdefiniowanymi uprawnieniami (plik authz).

Składnia dla uprawnień użytkowników w pliku authz oznacza:

  • [/]: katalog repezytorium, w tym przypadku katalog nadrzędny, czyli całe repezytorium
  • admin = rw: prawa odczytu ® i zapisu (w) dla użytkownika „admin”

Na koniec można sprawdzić działanie repezytorium za pomocą dowolnego klienta SVN, podając jako adres docelowy:

svn://domena.pl/użytkownik/repezytorium

gdzie:

  • domena.pl: dowolna domena przypisana konta w jego panelu
  • użytkownik: nazwa użytkownika systemowego (login SSH)
  • repezytorium: ścieżka do repezytorium względem katalogu domowego użytkownika, np. „svn/projekt1”

Analogicznie do przedstawionego przykładu:

svn://uzytkownik1.unixstorm.org/uzytkownik1/svn/projekt1