.

Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

pomoc:konta_ssh:jak_utworzyc_repozytorium_svn [2012/05/14 14:39] (aktualna)
adrian utworzono
Linia 1: Linia 1:
 +====== Jak utworzyć repozytorium SVN? ======
 +
 +
 +
 +Aby utworzyć nowe, własne repozytorium SVN, należy zalogować się do konta przez SSH i uruchomić polecenie:
 +
 +<code>
 +svnadmin create /home/UŻYTKOWNIK/KATALOG
 +</code>
 +gdzie:
 +  * **UŻYTKOWNIK:** nazwa użytkownika (tak jak login do konta SSH)
 +  * **KATALOG:** katalog dla repozytorium umieszczony na koncie użytkownika
 +
 +Przykładowo:
 +
 +<code>
 +mkdir ~/svn
 +svnadmin create /home/uzytkownik1/svn/projekt1
 +</code>
 +
 +W efekcie system automatycznie utworzy repozytorium we wskazanym katalogu wraz z całą jego konfiguracją.
 +Przed umieszczeniem plików w repozytorium 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ć:
 +<code>
 +admin = haslo123
 +</code>
 +Następnie w pliku **~/svn/projekt1/conf/svnserve.conf** należy zmienić linie:
 +
 +<code>
 +# anon-access = read
 +# auth-access = write
 +# password-db = passwd
 +# authz-db = authz
 +# realm = My First Repository
 +</code>
 +
 +na:
 +
 +<code>
 +anon-access = none
 +auth-access = write
 +password-db = passwd
 +authz-db = authz
 +realm = Nazwa repezytorium
 +</code>
 +
 +oraz do pliku **~/svn/projekt1/conf/authz**, na samym końcu dopisać:
 +
 +<code>
 +[/]
 +admin = rw
 +</code>
 +
 +W rezultacie utworzone repozytorium 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 repozytorium, w tym przypadku katalog nadrzędny, czyli całe repozytorium
 +  * **admin = rw**: prawa odczytu (r) i zapisu (w) dla użytkownika "admin"
 +
 +Kiedy wszystkie repozytoria zostaną utworzone, należy wybrać metodę dostępu do nich.
 +Dostępne metody to natywny protokół SVN (svn://) oraz SSH (svn+ssh://).
 +
 +W przypadku dostępu przez SSH, dostęp jest realizowany zgodnie z danymi dostępowymi konta systemowego (SSH) i ignorowane są konfiguracje użytkowników w repozytorium. Połączenie tą metodą odbywa się po adresie:
 +<code>
 +svn+ssh://domena.pl/home/użytkownik/repozytorium
 +</code>
 +
 +Aby korzystać z pełnej konfiguracji posiadanego repozytorium, należy uruchomić na własnym koncie osobnego daemona SVN, który będzie nasłuchiwał na wybranym i wolnym porcie. Można to zrobić poleceniem:
 +<code>
 +svnserve -r /home/użytkownik/katalog_svn --listen-port 3691 -d
 +</code>
 +
 +gdzie:
 +  * **użytkownik**: nazwa użytkownika systemowego (login SSH)
 +  * **katalog_svn**: nazwa katalogu zawierającego repozytoria (np. "svn")
 +  * **3691**: numer portu, na którym nasłuchiwać będzie serwer - jeśli wybrany port jest już zajęty, należy go zwiększyć
 +
 +Na koniec można sprawdzić działanie repozytorium za pomocą dowolnego klienta SVN, podając jako adres docelowy:
 +
 +<code>
 +svn://domena.pl:3691/repozytorium
 +</code>
 +
 +gdzie:
 +  * **domena.pl**: dowolna domena przypisana konta w jego panelu
 +  * **repozytorium**: nazwa istniejącego repozytorium, np. "projekt1"
 +
 +Analogicznie do przedstawionego przykładu:
 +
 +<code>
 +svn://uzytkownik1.unixstorm.org:3691/projekt1
 +</code>