2011-10-21 8 views
6

Niedawno zaktualizowałem wersję SVN i TortoiseSVN, które zainstalowałem na mojej stacji roboczej i gdy tylko sprawdzam różnice w pliku bez żadnych zmian, otrzymuję następujące błąd.Dlaczego SVN nie może znaleźć lokalizacji repozytorium dla revison 0

Unable to find repository location for "<path>" in revision 0 

Sprawdziłem nowy egzemplarz jednego z moich projektów (kilka razy go wypróbowałem) i nadal daje to ten sam wynik.

Próbowałem uaktualnić SVN na moim stanowisku pracy w nadziei, że to rozwiąże problem (założyłem nieporównywalność) - bez kości.

Próbowałem również ponownie zainstalować TortoiseSVN - ponownie, bez kości.

Jedną z innych zabawnych rzeczy, które zrobiłem, jest przeniesienie położenia oryginalnego repozytorium (przechowywanego w systemie plików, a nie w DB). Ale jego ścieżka jest taka sama jak komunikat o błędzie, więc uważam, że znajduje to repozytorium.

Co jeszcze może być przyczyną?

+0

Dla jasności sprawdziłem projekt, ponieważ przenoszę jego lokalizację na dysk sieciowy. – BIBD

+0

Czy adres URL repo został zmieniony podczas przenoszenia? Po którym rev. nie przeprowadziłeś repo? Czy możesz uzyskać dostęp do * dowolnej wersji *, utworzonej przed ruchem? –

Odpowiedz

4

Wydaje się, że jest to oczekiwany wynik sprawdzania różnic w pliku bez żadnych zmian. Spodziewałem się wyniku takiego jak "plik jest aktualny", ale powrót do starszej wersji TortoiseSVN na innej stacji roboczej, z której byłem pewien, że nadal działał, dał mi taki sam wynik dla pliku nieedytowanego.

+1

+1 dla 'sprawdzenia różnic w pliku bez żadnych zmiany ". To właśnie powodowało mi problemy przy próbie "zmiany poprzedniej wersji", gdy plik nie miał poprzedniej wersji. Był to plik, który został dodany jeden raz, a w setkach wersji później nie został zmodyfikowany. –

2

Twoja pierwsza wersja (wersja 0) prawdopodobnie nie ma katalogów "trunk", "branches" ani "tags". Zazwyczaj są one dodawane podczas początkowego odprawy (wersja 1).

Jako takie, jeśli masz "svn switch" -ed do jednego z tych katalogów (zazwyczaj robi się to do katalogu "trunk"), a następnie z prośbą o rewizję 0 w tym katalogu poprawnie dałbyś komunikat o błędzie, że ścieżka "<svnrepo>/trunk" nie może być znaleziona w wersji 0, więc nie może pobrać tej wersji i nadal honoruje poprzednie polecenie "svn switch".

Try „svn przełącznik” z nazwą projektu, bez wchodzenia w jakiekolwiek podkatalogów, a założę się, że można następnie podciągnąć rewizji 0.

+0

Czy to ma znaczenie, jeśli wypożyczyłem nową kopię z repozytorium w nowej lokalizacji i to jest ta nowa kopia, z którą mam problem? – BIBD

+1

Niezupełnie. Jeśli nie wykupisz "root" repozytorium, nie powinieneś spodziewać się dobrego sprawdzenia wersji 0. W wersji 0 zazwyczaj istnieje tylko "root" repozytorium. To wszystko, co jest dodawane później (w innych wersjach), które dodają inne niż root ścieżki i pliki. –

+1

Pamiętaj, że "trunk", "branches", "tags" itp. Nie są wbudowane w subversion, są to elementy sprawdzane w repozytorium po jego utworzeniu. Zazwyczaj nie ma ich w wersji 0. Oznacza to, że nie można ich sprawdzić (w żaden sposób) w wersji 0, nawet przy pomocy polecenia "https: // myserver/myproject/trunk". W przypadku wersji 0 sensowna byłaby tylko procedura "https: // myserver/myproject". –

1
$ svnadmin create /path/to/repos 

Stwarza to nowe repozytorium w katalogu/path/to/repos. To nowe repozytorium zaczyna życie w wersji 0, która jest zdefiniowana jako składająca się z niczego, ale katalogu głównego systemu plików root (/) najwyższego poziomu. Początkowo wersja 0 ma także jedną właściwość rewizji, svn: date, ustawioną na czas utworzenia repozytorium.

+0

Czy mówisz, że komunikat o błędzie jest oczekiwanym rezultatem, gdy zmieniasz plik, który się nie zmienił? (uwaga: przeredagowałem moje pytanie od czasu, kiedy na nie odpowiedziałeś) – BIBD

+0

Oczekiwane na 0, ponieważ jest to wyjątkowy przypadek - możesz zobaczyć w 'svn log filename' kiedy plik ** naprawdę pojawił się ** w repozytorium (musi to być rev 1 lub 2, myślę) - zobacz w mojej przykładowej historii repo http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk/Hello.en.txt –