Ja sprawdzić czy zdalne repozytorium SVN zostało zaktualizowane

Chciałem napisać program w C, który będzie pobierał listę katalogów repozytorium z pliku, przechodził do nich i sprawdzał czy nastąpiła aktualizacja repozytorium za pomocą np. komendy svn.

Jednak nie mogę znaleźć w svn help żadnych użytecznych aktualizacji. Chodzi o to, żeby program zwrócił w kodzie wyjścia lub na domyślnym wyjściu czy repozytorium zostało zaktualizowane od ostatniego svn update.

Ok. Znalazłem rozwiązanie.

  1. Trzeba wywołać svnversion

  2. Trzeba wywołać svn log -l 1 -q

  3. Z wyniku svn log -l 1 -q wyłuskujemy ciąg znaków między r, a pierwszą spacją(pomijając początkowe spacje)

  4. Porównujemy wyjście svnversion i wynik ostatniej operacji

Program ukończony. Nazywa się repochecker i możecie go pobrać z tej strony http://libgreattao.sourceforge.net/demos.html

Niestety, ale mój pomysł nie działał dla niektórych repozytoriów. W internecie znalazłem rozwiązanie

svn merge --dry-run -r BASE:HEAD .

Wykonanie tej komendy jest wolniejsze od mojego sposobu, ale raczej nie zawiedzie.