Zainstaluj Subversion z dostępem do Internetu w systemie Ubuntu
W tym artykule opisano instalowanie subversion za pomocą modułu apache, dzięki czemu można uzyskać do niego łatwy dostęp z innych systemów w sieci publicznej. Jeśli chcesz bezpieczniejszego serwera 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ące polecenie:
sudo apt-get install subversion libapache2-svn
Zamierzamy stworzyć repozytorium subversion w / svn, chociaż powinieneś wybrać lokalizację, która ma dużo miejsca.
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
Aby włączyć moduł dav, linia DAV musi zostać odkomentowana
# 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 jest po prostu podstawowe uwierzytelnianie, więc nie uważaj tego za wyjątkowo 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ć podstawowe uwierzytelnianie
AuthType Basic
AuthName "Repozytorium Subversion"
AuthUserFile /etc/apache2/dav_svn.passwd
Aby utworzyć użytkownika na użytek repozytorium, wykonaj następujące polecenie:
sudo htpasswd2 -cm /etc/apache2/dav_svn.passwd
Zauważ, że powinieneś używać opcji -c PIERWSZY czas, kiedy tworzysz użytkownika. Następnie użyjesz 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:
Wpisz ponownie nowe hasło:
Dodawanie hasła dla geek użytkownika
Zrestartuj apache, wykonując następujące polecenie:
sudo /etc/init.d/apache2 restart
Teraz, jeśli przejdziesz w przeglądarce do http://www.server.com/svn, powinieneś zobaczyć, że repozytorium jest włączone dla anonimowego dostępu do odczytu, ale dostęp do autoryzacji 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!