Nie mogę wykonać zatwierdzenia SVN. Otrzymuję ten błąd:
org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded
svn: Working copy 'C:\.... is too old (format 10, created by Subversion 1.6)
Jak to naprawić?
Nie mogę wykonać zatwierdzenia SVN. Otrzymuję ten błąd:
org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded
svn: Working copy 'C:\.... is too old (format 10, created by Subversion 1.6)
Jak to naprawić?
Odpowiedzi:
Musisz zaktualizować swojego klienta subversion do co najmniej 1.7.
Korzystając z klienta wiersza poleceń, musisz ręcznie zaktualizować format kopii roboczej, wydając polecenie svn upgrade:
Uaktualnianie kopii roboczej
Subversion 1.7 wprowadza istotne zmiany w formacie kopii roboczej. W poprzednich wydaniach Subversion, Subversion automatycznie aktualizował kopię roboczą do nowego formatu, gdy wykonywana była operacja zapisu. Jednak Subversion 1.7 uczyni to krokiem ręcznym. Przed użyciem Subversion 1.7 z kopiami roboczymi, użytkownicy będą musieli uruchomić nowe polecenie,
svn upgradeaby zaktualizować metadane do nowego formatu. To polecenie może chwilę potrwać, a dla niektórych użytkowników bardziej praktyczne może być po prostu pobranie nowej kopii roboczej.
- Uwagi do wydania Subversion 1.7
TortoiseSVN dokona aktualizacji kopii roboczej przy następnej operacji zapisu:
Uaktualnianie kopii roboczej
Subversion 1.7 wprowadza istotne zmiany w formacie kopii roboczej. W poprzednich wersjach Subversion automatycznie aktualizował kopię roboczą do nowego formatu po wykonaniu operacji zapisu. Jednak Subversion 1.7 uczyni to krokiem ręcznym.
Zanim będzie można użyć istniejącej kopii roboczej z TortoiseSVN 1.7, musicie najpierw zaktualizować format. Jeśli klikniesz prawym przyciskiem myszy starą kopię roboczą, TortoiseSVN pokaże tylko jedno polecenie w menu kontekstowym: Uaktualnij kopię roboczą.
- Uwagi do wydania TortoiseSVN 1.7
svnzainstalowany? ( sudo apt-get install svn)
upgradepolecenia. Ubuntu 12.04 nie zainstalowałoby 1.7 bez dodania nowego ppa. askubuntu.com/questions/65468/…
z eclipse, możesz wybrać w projekcie, kliknij prawym przyciskiem myszy-> zespół-> uaktualnij
Jeśli właśnie zaktualizowałeś do SVN 1.7 na swoim komputerze (tak jak właśnie zrobiłem) i masz wiele projektów w obszarze roboczym Eclipse, które wymagają aktualizacji, możesz wykonać następujące czynności w oknie terminala w systemach Unix-baesd:
cd [eclipse/workspace] # <- you supply the actual path here
for file in `find . -depth 2 -name "*.svn"`; do svn upgrade `dirname $file` ; done;
Po trochę googlowaniu znalazłem coś, co wydaje się być odpowiednikiem dla użytkowników systemu Windows:
http://www.rqna.net/qna/mnrmqn-how-to-find-all-svn-working-copies-on-win-xp.html
Zobacz odpowiedź Alexeya Shcherbaka w połowie strony.
Ten problem jest spowodowany tym, że próbujesz skompilować projekt, który ma pliki starszego SVN niż obecnie używasz.
Masz dwa sposoby rozwiązania tego problemu
Możesz również otrzymywać dziwne komunikaty o potrzebie uaktualnienia kopii roboczej, gdy inne kopie robocze są zagnieżdżone w twojej. Miałem ten problem z projektem Symphony, ponieważ niektóre foldery frameworka są kopią roboczą i przypuszczam, że nie zostały poprawnie wyczyszczone przed opublikowaniem.
W takim przypadku po prostu wyszukaj pliki .svni usuń .svnfoldery, których nie chcesz (oczywiście nie usuwaj swoich w katalogu głównym).
Po uaktualnieniu do najnowszej wersji Tortoise-SVN musiałem najpierw wykonać „Upgrade” (w przeciwieństwie do „Update”!).
Jeśli otrzymujesz ten błąd z Netbeans (7.2+), oznacza to, że twoja oddzielnie zainstalowana wersja Subversion jest wyższa niż wersja w netbeans. W moim przypadku Netbeans (v7.3.1) miał SVN v1.7 i właśnie zaktualizowałem mój SVN do v1.8.
Jeśli zajrzysz Tools > Options > Miscellaneous (tab) > Versioning (tab) > Subversion (pane), ustaw Preferowany klient = CLI , a następnie możesz ustawić ścieżkę do zainstalowanego SVN, który dla mnie był C:\Program Files\TortoiseSVN\bin.
Więcej można znaleźć w często zadawanych pytaniach dotyczących klientów Subversion Netbeans .
W przypadku AnkhSVN w programie Visual Studio dostępna jest również opcja „Uaktualnij kopię roboczą” w menu kontekstowym rozwiązania w Eksploratorze rozwiązań (jeśli ma to zastosowanie).
Możesz zaktualizować do Subversion 1.7. Aby zaktualizować do Subversion 1.7, musisz uruchomić istniejący projekt w Xcode 5 lub nowszym. Spowoduje to wyświetlenie ostrzeżenia ' The working copy ProjectName should be upgraded to Subversion 1.7' (pokazane na poniższym zrzucie ekranu).
Powinieneś wybrać 'Upgrade przycisk ', aby zaktualizować do Subversion 1.7. To zajmie trochę czasu.
Jeśli używasz terminala , możesz zaktualizować do Subversion 1.7, uruchamiając poniższe polecenie w katalogu swojego projektu: svn upgrade
Zauważ, że gdy już masz upgraded to Subversion 1.7 you cannot go back to Subversion 1.6.
svn upgrade