2010-02-19 16 views
5

Używam SVNKit 1.3.2 i próbuję uzyskać numer wersji roboczej kopii.svnkit: jak uzyskać numer wersji roboczej kopii?

kopia robocza jest checkouted również z SVNKit, ale gdy próbuję zadzwonić

clientManager.getLookClient().doGetYoungestRevision(destination); 

mam FileNotFoundException mówi mi, że „Format” plik nie został znaleziony pod ścieżkę docelową ex /path/to/working/copy/format

widzę 2 problemy: - to próbuje uzyskać dostęp do pliku „format” prawo w pracy katalog główny, a ten plik powinien być w .svn folderu

  • Nie ma pliku w tym folderze .svn.

Jakieś wskazówki? Dziękuję Ci!

+0

Mam taki sam problem jak Ty. To jest bardzo dziwne. Próbowałem twojej odpowiedzi, ale nie jest to dokładnie to, czego potrzebuję. –

Odpowiedz

5

Wydaje się, że powinno się to odbywać poprzez SVNStatusClient:

clientManager.getStatusClient().doStatus(destination, false).getRevision().getNumber(); 

Choć nadal nie rozumiem w czym problem z doGetYoungestRevision (docelowym) ...

+0

Po wprowadzeniu zmian w kopii roboczej, musiałem użyć '.doStatus (wc, true) .getRemoteRevision()', aby uzyskać wersję zatwierdzoną. '.doStatus (wc, false) .getRevision()' właśnie dało mi wersję, która została początkowo wyewidencjonowana. Są prawdopodobnie pewne subtelności tutaj brakuje mi. –

0

To nie działa, ponieważ jest dla doGetYoungestRevision repozytorium, a nie kopię roboczą.

Miałem nadzieję osiągnąć te same rzeczy co ty i odkryłem, że kiedy destination wskazuje repozytorium, zwraca on ostatni numer repozytorium.

Klasa sama w sobie służy do pracy z repozytorium, możesz spojrzeć na dokumentację here.

Powiązane problemy