Uruchamiamy SVN, cz. I
Krótkie how-to o tym jak postawić usługę svn. Użyta dystrybucja PLD Linux.
potrzebne składniki
- subversion
- subversion-libs
- apache-mod_dav_svn
- htpasswd-thttpd
Konfiguracja Apacha
modyfikujemy plik /etc/httpd/httpd.conf/65_mod_dav_svn.conf dodając taką sekcje:
<Location /svn>
DAV svn
SVNPath /home/services/svnroot
<LimitExcept GET PROPFIND OPTIONS REPORT>
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /etc/passwd_svn
Require valid-user
</LimitExcept>
</Location>
Tworzymy użytkownika
Kolejnym krokiem jest utworzenie użytkowników naszego repozytorium. Konta są niezależne od kont systemowych. Będzemy je przechowywać w /etc/passwd_svn, najpierw utwórzmy plik:
$ touch /etc/passwd_svn
następnie tworzymy nowego użytkownika, używając do tego komendy htpasswd.
$ htpasswd /etc/passwd_svn user1
program sam poprosi nas o podanie hasła dostępowego.
Tworzymy repozytorium
Do poprawnego działania potrzebujemy oczywiście repozytorium. Tworzymy je następującą komendą:
svnadmin create /home/services/svnroot
Odpowiednie prawa dostępu
Musimy ustawić odpowiednie prawa dostępu do svnroot, tak aby Apach mógł z niego bez problemu korzystać. W tym celu zmienimy właściciela katalogu svnroot na takiego samego z jakiego korzysta Apache. Domyślnie jest to http
$ cd /home/services $ chown -R http:http svnroot $ chown http:http /etc/passwd_svn
Spróbujmy teraz użyć naszego repozytorium. Najpierw przeładujmy konfiguracje Apacha
$ service httpd reload
teraz zaimportujmy nasz pierwszy moduł
$ svn import test http://test.pl/svn
gdzie test.pl to adres hosta na którym uruchomialiśmy svn'a. Można też użyć adresu ip na którym nasłuchuje Apache, zgodnie z tym co jest ustawione w /etc/httpd/apache.conf zmienna Listen.
Instalacja WebSVN
Jeśli wszystko przebiegło bez błędów, spróbujmy przejrzeć repozytorium za pomocą przeglądarki WWW. W tym celu wpisujemy adres http://test.pl/svn. Powinniśmy ujrzeć prostą przeglądarkę repozytorium. Dla lepszej prezentacji danych potrzebujemy WebSVN, a także pakietu php-xml.
Pobieramy WebSVN
$ cd /home/services $ svn co --username guest http://websvn.tigris.org/svn/websvn/trunk websvn $ chown -R http:http websvn
teraz utwórzmy plik /etc/httpd/webapps.d/websvn.conf o takiej zawartości:
Alias /websvn /home/services/websvn
<Directory "/home/services/websvn">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
dzięki temu WebSVN będzie dostępny pod adresem http://test.pl/websvn.
Kolejny etap to skonfigurowanie samego programu. Zgodnie z instrukcją zawartą w pliku install.txt w sekcji REPOSITORY SETUP dodajemy nasze nowe repozytorium
$config->addRepository('repo', 'file:///home/services/svnroot/');
i to wszystko. Po ponownym przeładowaniu konfiguracji Apacha, powinniśmy cieszyć się ładnym wyglądem, a przede wszystkim funkcjonalnością WebSVN.
the end
W bliżej nieokreślonej przyszłości mini how-to o tym jak ustawić połączenie szyfrowane po SSL, określić uprawnienia użytkowników w dostępie do modułów.
Więcej informacji w SVN Book
Komentarze do notki 'Uruchamiamy SVN, cz. I'
Dodaj komentarz:
Zastrzegam sobie prawo do usuwania komentarzy nie odnoszących się do treści wpisu.
Już lepiej tego całego svnserve użyć, przynajmniej Apacz nie będzie żarł pamięci.
30 lipca 2006 14:16:53A i tak CVS rox.