2012-11-06 15 views
8

Pracuję na OSX, i jedna z moich kopii roboczych Subversion właśnie zaczęła zwracać następujący błąd dla wszystkich poleceń, jednak moje inne płatności działają bez zarzutu. Dostaję tę samą wiadomość zarówno z binami instalowanymi przez SVN, jak i z moim klientem Cornerstone, ale inne działające katalogi są w porządku.Subversion: Kopia robocza to stara wersja rozwojowa

> svn update 
svn: E155036: Please see the 'svn upgrade' command 
svn: E155036: Working copy '/working_directory' is an old development version (format 12); to upgrade it, use a format 18 client, then use 'tools/dev/wc-ng/bump-to-19.py', then use the current client 
> svn upgrade 
svn: E155019: Can't upgrade '/working_directory' as it is not a pre-1.7 working copy directory 
svn: E150000: Missing default entry 

nie mam skrypt bump-to-19.py gdziekolwiek na moim komputerze (według find/-type f -name bump-to-19.py), jednak myślę, że udało mi się go znaleźć na Apache repository. Powiedział, że nie jestem zaznajomiony z tym, co robi i jak z niego korzystać. Idealnie byłoby uniknąć sprawdzania nowej wersji tego katalogu roboczego i ręcznego scalania wszystkich moich (wielu) zmian.

Jedyne informacje, które udało mi się znaleźć, są powiązane z Netbeans i javahl i nie używam żadnego z nich.

EDIT: Po pobraniu pliku bump-to-19.py i uczynienie go wykonywalnym, próbowałem go przed moim katalogu roboczym bezskutecznie:

> ./bump-to-19.py working_directory/ 
error: format is 29 not 18: 'working_directory/' 

Odpowiedz

12

Mimo, że nie był w stanie zorientować się, dlaczego mój katalog roboczy został uszkodzony , Udało mi się obejść to przy użyciu rsync - istnieje opcja, C, która zignoruje pliki CVS/SVN i katalogi podczas tworzenia kopii zapasowej. Wykonałem kopię zapasową za pomocą tej opcji, ponownie sprawdziłem projekt, a następnie skopiowałem kopię zapasową z powrotem do nowego katalogu roboczego. SVN znów jest szczęśliwy.

> rsync -arC working_directory working_directory_no_svn 
> rm -rf working_directory 
> svn co https://svn.example.com/project/trunk working_directory 
> rsync -ar working_directory_no_svn working_directory 
+0

Niezłe rozwiązanie, ale myślę, że ten opublikowany przez użytkownika 1794106 jest łatwiejszy i czystszy. – Nagel

+2

To nie zadziałało w moim przypadku, próbowałem uruchomić uaktualnienie. – doublesharp

8

miałem ten sam problem i tutaj jest jak ja rozwiązany:

  1. Usuń folder .svn na najwyższym poziomie (rm -rf .svn) ponownie
  2. Zamówienie oprogramowanie z SVN (svn co ...)
  3. Dobrze iść!
0

Miałem podobny problem, mój svn to wersja 1.7.10, jednak moja wtyczka Subversion dla Eclipse jest nieco starsza, zakładam 1.6.something.

Użycie polecenia "rsync -arC working_directory archive_no_svn" było przełomowe - przynajmniej teraz miałem kopię godzin synchronizacji, które właśnie ukończyłem.

Próbowałem użyć "svn co", ale była to zła wersja, więc po prostu uruchomiłem aktualizację za pomocą wtyczki Subversion w Eclipse - przywróciło to katalog roboczy z repozytorium - właściwie to, czego szukałem, i była poprawna wersja.

Przywrócenie rsync do właściwej lokalizacji było podstępem. Wydaje się, że rsync zrzuca folder roboczy do lokalizacji archiwum, tworząc katalog_archiwum/katalog_pracy/pliki-plików. Zsynchronizowanie zarchiwizowanych danych z powrotem do katalogu working_directory zostało osiągnięte za pomocą: rsync -ar archive_no_svn/working_directory.

Teraz muszę dowiedzieć się o modernizacji mojego Subversion plugin do Eclipse 1,7

5

Wiem to już od jakiegoś czasu, ale znalazłem rozwiązanie używając wskazówek podanych przez SVN ... Zasadniczo użyć uaktualnienia polecenie, jak stwierdza. Korzystając z CMD, poszedłem do mojego folderu roboczego, w którym znajdował się kłopotliwy projekt. Pozwala wywołać projekt Project1.Wywołujemy polecenie:

„svn aktualizacji Project1”

to rozwiązać mój problem właściwy sposób bez angażowania jakieś włamania lub obejścia.

+1

Dziękuję bardzo! To działało jak czar. Powinienem zauważyć, że 'cd project1; Aktualizacja svn ", której początkowo próbowałem, nie działa. – Nagel

+0

Po prostu chciałem dodać notatkę na temat odpowiedzi, że zrobiłem * próbuję uruchomić 'svn upgrade project_name', ale otrzymałem ten sam komunikat o błędzie, co inne polecenia svn. Zdecydowanie warto najpierw wypróbować tę opcję, o wiele czystszą, jeśli działa. – doublesharp

Powiązane problemy