14Sep

Zainstaluj Subversion z dostępem do sieci w systemie Ubuntu

W tym artykule opisano instalację subversion z modułem Apache, aby można było uzyskać do niego łatwy dostęp z innych systemów w sieci publicznej. Jeśli chcesz mieć bezpieczniejszy serwer svn, możesz użyć svnserve + ssh, którego nie omówiono w tym artykule.

Aby zainstalować subversion, otwórz terminal i uruchom następującą komendę:

sudo apt-get install subversion libapache2-svn

Zamierzamy stworzyć repozytorium subversion w / svn, chociaż powinieneś wybrać lokalizację, która ma dużą ilośćprzestrzeń.

sudo svnadmin create / svn

Następnie musimy edytować plik konfiguracyjny dla modułu webdav subversion. Możesz użyć innego edytora, jeśli chcesz.

sudo gedit /etc/apache2/ mods-enabled / dav_svn.conf

Element Location w pliku konfiguracyjnym określa katalog główny, z którego można uzyskać dostęp do subversion, na przykład: http: //www.server.com/ svn

& lt; Location / svn & gt;

Linia DAV musi zostać odkomentowana, aby umożliwić modułowi dav

# Odkomentuj to, aby włączyć repozytorium,
DAV svn

Linia SVNPath powinna być ustawiona w tym samym miejscu, w którym zostało utworzone repozytorium za pomocą polecenia svnadmin.

# Ustaw to na ścieżce do twojego repozytorium
SVNPath / svn

Następna sekcja pozwoli ci włączyć uwierzytelnianie. To tylko podstawowe uwierzytelnienie, więc nie uważaj tego za bardzo bezpieczne. Plik haseł będzie zlokalizowany tam, gdzie ustawienie AuthUserFile ustawia go na. .. prawdopodobnie najlepiej pozostawić domyślny.

# Odkomentuj następujące 3 linie, aby włączyć uwierzytelnianie podstawowe
AuthType Basic
AuthName "Repozytorium Subversion"
AuthUserFile /etc/apache2/ dav_svn.passwd

Aby utworzyć użytkownika w repozytorium, użyj następującego polecenia:

sudo htpasswd2 -cm /etc/apache2/ dav_svn.passwd & lt; nazwa użytkownika & gt;

Zwróć uwagę, że powinieneś używać opcji -c tylko PIERWSZY czas, w którym utworzysz użytkownika. Następnie będziesz chciał użyć opcji -m, która określa szyfrowanie hasła MD5, ale nie odtwarza pliku.

Przykład:

sudo htpasswd2 -cm /etc/apache2/ dav_svn.passwd geek
Nowe hasło:
Ponownie wpisz nowe hasło:
Dodanie hasła dla managera użytkownika

Uruchom ponownie apache, wykonując następującą komendę:

sudo /etc/init.d/ apache2 restart

Teraz jeśli wejdzieszTwoja przeglądarka do http: //www.server.com/ svn, powinieneś zobaczyć, że repozytorium jest włączone dla anonimowego dostępu do odczytu, ale dostęp do commit będzie wymagał nazwy użytkownika.

Jeśli chcesz zmusić wszystkich użytkowników do uwierzytelnienia nawet w celu uzyskania dostępu do odczytu, dodaj następujący wiersz tuż pod linią AuthUserFile z góry. Zrestartuj apache po zmianie tej linii.

Wymagaj prawidłowego użytkownika

Teraz, po odświeżeniu przeglądarki, pojawi się monit o podanie poświadczeń:

Masz działający serwer subversion!