Korzystanie z mechanizmu svn2www jest bajecznie proste!
Poniżej przedstawiamy krok po kroku sposób konfiguracji i użycia mechanizmu.

svn2www - pierwsze kroki

Wymagania

Mechanizm svn2www wymaga posiadania dostępu do repozytorium SVN oraz serwera WWW. Obie usługi muszą być świadczone przez NQ.pl.
W przypadku pakietów NQ.profesja i NQ.vip, rozszerzenie udostępniające pięć repozytorium jest udostępniane bezpłatnie. W przypadku mniejszych pakietów dla hostingu stron WWW (NQ.start oraz NQ.biznes), istnieje możliwość zakupienia na preferencyjnych warunkach rozszerzenia NQ.developer lub NQ.team.

Aby korzystać z repozytorium SVN wymagane jest zainstalowanie oprogramowania klienckiego. Może nim być popularny TortoiseSVN - popularny klient do repozytorium SVN.

Tworzymy repozytorium

Do poprawnej pracy mechanizmu potrzebne jest działające repozytorium SVN. Jeśli jeszcze go nie utworzyłeś, możesz to uczynić z poziomu panelu zarządzania serwerem.
Na potrzeby niniejszej instrukcji utworzone zostanie repozytorium o nazwie testujemy_svn2www:

Utworzenie kopii roboczej

Nowo utworzone repozytorium zostanie skojarzone z katalogiem

  • E:\Repozytoria\test usługi svn2www w NQ.pl\

znajdującym się na lokalnym dysku twardym. W tym celu z poziomu TortoiseSVN należy użyć polecenia checkout:

Logowanie do repozytorium

Jeśli ścieżka wskazująca repozytorium została podana poprawnie, TortoiseSVN zażąda loginu i hasła do repozytorium. Nasze testowe repozytorium posiada konto o nazwie admin z hasłem o tym samym brzmieniu:

Jeśli operacja przebiegnie poprawnie, system Windows zaprezentuje folder związany z repozytorium stosując inny wygląd ikony:

Dodajemy pierwszy plik do repozytorium

Niniejszy opis ma za zadanie przedstawić sposób działania i użycia mechanizmu svn2www. W ramach testu, utworzymy plik index.php, który powinien pojawić się automatycznie na serwerze WWW.
Plik index.php, który spowoduje wyświetlenie w oknie przeglądarki WWW komunikatu Pierwsza rewizja został skopiowany do folderu (w naszym przypadku jest to: E:\Repozytoria\test usługi svn2www w NQ.pl):

Definicja profilu

Mechanizm svn2www musi znać oczekiwania programisty. W związku z tym, system musi znać:

  • nazwę repozytorium, które zostanie użyte podczas przetwarzania,
  • login do repozytorium,
  • hasło do repozytorium,
  • ścieżkę do katalogu w przestrzeni serwera FTP, do którego pliki będą automatycznie kopiowane.

Powyższe, minimalne wymagania pozwolą mechanizmowi nawiązać połączenie ze wskazanym repozytorium SVN, pobrać jego zawartość i skopiować do właściwego katalogu na serwerze FTP.

Powyższe informacje programista może dostarczyć systemowi tworząc plik profilu. Wszystkie pliki tego typu należy kopiować do katalogu:

  • svn2www/

w głównej przestrzeni użytkownika FTP (konto o nazwie webmaster.nazwaserwera.
Liczba plików profili nie jest limitowana!

Na potrzeby niniejszej prezentacji utworzono plik o nazwie profiltestowy i następującej zawartości:

Nasz plik o nazwie profiltestowy kopiujemy dowolnym programem FTP do katalogu svn2www/:

Wykonujemy COMMIT

Polecenie COMMIT jest operacją kopiującą do repozytorium nowe lub zmodyfikowane pliki. Uruchomienie tej funkcji w kontekście naszej prezentacji spowoduje wysłanie do repozytorium naszego pliku index.php.

Kiedy svn2www wykona swoją pracę?

Mechanizm svn2www analizuje treść komentarza, który można wypełnić dowolnym tekstem przed potwierdzeniem polecenia commit. Wyzwolenie operacji kopiowania danych z repozytorium do serwera WWW jest realizowane po rozpoznaniu polecenia:

  • publikuj = nazwa-pliku-profilu

lub ze wskazaniem numeru rewizji:

  • publikuj = nazwa-pliku-profilu,nr-rewizji

System przegląda treść komentarza w poszukiwaniu pierwszego polecenia publikuj zgodnego z powyższym formatem i podejmuje próbę wykonania odpowiedniej operacji. Brak polecenia publikuj, błędy w zapisie lub brak wskazanego pliku profilu uniemożliwia poprawne wykonanie operacji.

Jeśli użytkownik wskaże w poleceniu numer rewizji, wówczas system skopiuje pliki pobierając je z repozytorium ze wskazanej rewizji. Brak tego parametru domyślnie oznacza rewizję najnowszą.

Wywołujemy COMMIT, zlecając jednocześnie opublikowanie pliku index.php na serwerze WWW:

W naszym przypadku wskazanie numeru rewizji nie było konieczne; zostało to zrobione tylko do celów prezentacyjnych.

Poprawne wykonanie COMMITu powinno zakończyć się potwierdzeniem ze strony programu TortoiseSVN:

Czy mechanizm svn2www zadziałał poprawnie?

Mechanizm powinien wykonać swoją pracę w czasie 1 minuty. Zgodnie z definicją profilu (plik profiltestowy), pliki z repozytorium powinny być kopiowane do katalogu html/ w przestrzeni głównego konta FTP.
Sprawdźmy zatem zawartość tego katalogu:

Gotowe! Operacja została przeprowadzona poprawnie!