2013-02-22 4 views
9

Próbuję przesłać zapytanie do dziennika SVN, aby uzyskać wynik XML dla gałęzi funkcji, aby uwzględnić wszystkie poprawki między 2 datami przy użyciu wiersza cmd SlikSVN. Dostaję błąd powyżej "svn: E160013: File not found: revision 21602, path 'XXX'". Kiedy przejdź do lokalizacji, w ścieżce nie istnieją i jeśli przeglądać dziennik SVN w żółwia nie mogę znaleźć rewizji 21602. Jest to zapytanie:svn: E160013: Plik nie znaleziony: rewizja 21602, ścieżka "XXX" Zapytanie do dziennika SVN

svn log --xml PATH -v -r {2012-09-25}:{2013-02-22} > XXX.xml 

ja zmęczony działa następujące:

svn log --xml PATH -v -r 21603:{2013-02-22} > XXX.xml 

i ten sam błąd jest zwracany z wyjątkiem rewizji „21603”, choć widzę, że istnieje w Tortoise Log.

Wykonałem dokładnie to samo zapytanie przed wieloma gałęziami obiektów i nigdy nie miałem tego problemu. Próbowałem uruchomić go na bagażniku, który został odcięty jako test i otrzymuję ten sam typ błędu. Tylko na bok poprawki odnoszą się do folderów i plików (XXX w powyższym komunikacie o błędzie) w katalogu głównym gałęzi, która nigdy nie istniała. Pomoc w tej sprawie byłaby bardzo doceniana, ponieważ wyczerpałem wszystkie dostępne zasoby, aby dowiedzieć się, co się tutaj dzieje.

+0

Mam podobny problem. Mój "winowajca" wydaje się być "ruchem" svn. Numer wersji, który pojawia się znikąd, wydaje się być, gdy folder został przeniesiony. Nie mam teraz rozwiązania. Daj mi znać, jeśli myślisz, że też gdzieś się tam przeprowadziłeś. Dzięki. – granadaCoder

Odpowiedz

3

Przede wszystkim, jeśli chcesz wysłać zapytanie do pliku, który nie istnieje już w bieżącej kopii roboczej, musisz podać pełną ścieżkę do lokalizacji repozytorium SVN, np. http://svn/repo/trunk/src/myfile zamiast src/myfile.

Po drugie, jeśli został usunięty, to nie pojawiają się tylko przy użyciu -r <rev> - trzeba zapewnić korektę peg, czyli zmiany, które określa, w jakim punkcie w czasie (czyli w której wersji) Subversion powinien wyglądać dla określonej ścieżki. Następnie użyje obiektu, który znajdzie w tej wersji w podanej ścieżce, aby wykonać wszystkie żądane operacje.

Na koniec, jeśli zakres zmian operacyjnych (tj. To, co podajesz z opcją -r) obejmuje wersję, w której określona ścieżka już nie istnieje, Subversion ponownie zarzuci, że plik nie został znaleziony.

Aby uzyskać więcej informacji na temat zmiany peg, spojrzeć na ten link: http://svnbook.red-bean.com/en/1.6/svn.advanced.pegrevs.html

dla tego zapytania, spróbuj

svn log --xml [email protected] -v -r {2012-09-25}:LASTREV > XXX.xml 

gdzie FULLPATH jest pełna ścieżka repozytorium, REV jakakolwiek rewizja gdzie ścieżka istniała, a LASTREV jest ostatnią wersją, w której plik/folder istniał w repozytorium.

+0

Dzięki. Uratował mnie długi ból głowy, dlaczego redbean stary przewodnik nie działa na usuniętych elementach. – anttir

Powiązane problemy