2009-04-26 11 views
5

Czy jest możliwe, aby svn uruchomił jakieś polecenie przed każdym zatwierdzeniem? Mam trochę dokumentacji w LaTeX w repozytorium i chciałbym mieć zawsze najnowszą wersję skompilowanych dokumentów dostępnych jako PDF w repozytorium. To samo byłoby z dokumentami Doxygen.Jak wygenerować dokumentację, uruchamiając polecenie przy każdym zatwierdzeniu svn

Założę się, że istnieje pewna magiczna właściwość svn:something lub coś w tym stylu, ale jeszcze nic nie znalazłem.

Odpowiedz

2

Jeśli automatycznie generujesz dokumentację, po co umieszczać go w repozytorium? Tworzysz go za każdym razem, więc nie ma sensu mieć jego wersji (jest generowany mimo wszystko). Wolę używać haka przed zatwierdzeniem, aby wygenerować dokumentację i umieścić ją we wspólnym miejscu dostępu do niej, niż przechowywać ją w repozytorium - przechowywanie jej w repozytorium tworzy nadmiarowość, której należy unikać z mojego punktu widzenia.

(I zgadzam się, że pre-commit haki nie należy modyfikować, co jest zaangażowana :)

+0

Ta odpowiedź jest nieco arogancka; istnieją ważne powody do "automatycznego generowania" czegoś przed zatwierdzeniem. Oto jeden: programiści wykonujący zatwierdzenie mogą mieć zainstalowane odpowiednie narzędzie do automatycznego generowania, ale system wdrożony może tego nie robić. Lub wdrożony system może nie być skonfigurowany do odbierania kodu źródłowego (tylko skompilowany kod). –

7

Możesz z łatwością wykonać odwrotność. Utwórz skrypt powłoki, który będzie działał pod svn commit po zbudowaniu rzeczy.

0
+0

pre-commit haki powinny * nie * modyfikować, co jest zaangażowana. Zobacz http://svnbook.red-bean.com/nightly/en/svn.reposadmin.create.html#svn.reposadmin.create.hooks –

+2

Absolutnie, nie jestem świadomy, że to jest to, co zasugerowałem. O ile rozumiem, pytania dotyczyły sposobu automatycznego generowania dokumentacji. –

1

Wszystkie te działania są kontrolowane po stronie serwera. Zajrzyj do katalogu repozytoriów, a znajdziesz folder hooków z mnóstwem przykładowych skryptów. Chcesz haka przed zatwierdzeniem.

Należy pamiętać, że jeśli uruchamiasz serwer w systemie Windows, te skrypty są wykonywane bez środowiska, więc nie zakładaj, że ścieżka jest ustawiona i używaj bezwzględnych ścieżek.

+1

Haczyki przed zatwierdzeniem powinny * nie * modyfikować tego, co jest zatwierdzane. Zobacz http://svnbook.red-bean.com/nightly/en/svn.reposadmin.create.html#svn.reposadmin.create.hooks –

+0

Nie odpowiada na PO, który zapytał "Czy jest jakiś sposób, aby to zrobić? rzeczy na * kliencie *? " (Wygląda na to, że haczyki są po stronie serwera.) –

Powiązane problemy