Przeczytałem tę odpowiedź: How do I return to an older version of our code in Subversion? i użyłem polecenia svn merge -r 150:140 .
, aby powrócić do starej wersji (nie musiałem zatwierdzać cofniętych zmian, wystarczy przejść do starej wersji plików). Wcześniej miałem czystą wersję repo w wersji 150 (brak ręcznych zmian w plikach). Niestety, mam tych ostrzeżeń:Nie udało się cofnąć zmian w przypadku niektórych pomijanych ścieżek.
...
Skipped 'some/file.h'
Skipped 'some/file2.h'
...
Skipped 'some/file3.h'
Skipped 'some/file4.h'
...
Summary of conflicts:
Skipped paths: 4
który zaskakuje mnie widząc, jak wszystko, co chciałem zrobić, to wrócić do jakiejś starej wersji plików (i nie miałem żadnych zmian wcześniej).
Co mogło być przyczyną? Jak dostać się do starej wersji?
Edit: I zostały sprawdzone i najwyraźniej te pliki nie istnieją w wersji currrent (150) (zarówno na dysku lub w SVN):
svn: warning: W155010: The node 'some/file.h' was not found.
Ale nie istnieje w wersji 140. Tak gdzieś po drodze zostały usunięte. Ale dlaczego SVN nie może ich przywrócić?
Gdyby nie zmienia nazwy plików? Subversion nie radzi sobie dobrze z nazwami. – andref
Nie, te pliki zostały właśnie usunięte. – NPS
Jaki jest wynik działania 'svn stat'? – Constantin