Po pierwsze, próbuję ponownie zintegrować gałąź z bagażnikiem (używając TortoiseSVN), ale pojawia się komunikat o błędzie „Zapytanie o informacje o scaleniu wymaga wersji 3 schematu systemu plików FSFS; system plików E: / MyRepository / używa tylko wersji 2”.
Czy naprawdę nie było możliwe ponowne zintegrowanie gałęzi we wcześniejszych wersjach subversion? A może jest to inny sposób?
W każdym razie, jak mogę zaktualizować system plików z wersji 2 do wersji 3?
Odpowiedzi:
Nie określiłeś wersji Subversion, którą działa twój serwer. Ale na podstawie wiadomości podanej w pytaniu jest to prawdopodobnie wersja 1.4.x lub starsza. Nie pamiętam, czy podano polecenie aktualizacji do konwersji z 1.4.x na 1.5.x, ale pewnym sposobem na przeniesienie repozytorium z wersji 2 do wersji jest zrzut i załadowanie. Ale to nie ma większego znaczenia, i tak będziesz chciał zainstalować wersję 1.6.x, aby korzystać z najnowszej wersji. Oto kroki, które musisz wykonać:
Zobacz także często zadawane pytania dotyczące Subversion http://subversion.apache.org/faq.html#dumpload w celu uzyskania konkretnego przykładu.
To powinno Cię załatwić, a plik UUID powstrzyma twoich klientów przed szaleniem. Wykonaj aktualizację svn, aby się upewnić.
źródło
svnadmin help load
komunikatem:--force-uuid : set repos UUID to that found in stream, if any
. W skrócie: nie trzeba bawić się plikamisudo chown -R fred:www myrepository
rozszerzone osudo chmod g+w
celumyrepository/db/repcache.db
imyrepository/db/uuid
Zrzut / ładowanie nie jest wymagane do aktualizacji repozytoriów Subversion. Użyj polecenia svnadmin upgrade:
UWAGA: aktualizacja svnadmin „wykonuje tylko minimalną ilość pracy wymaganej do osiągnięcia tego, jednocześnie zachowując integralność repozytorium. Podczas gdy zrzut i kolejne ładowanie gwarantują najbardziej zoptymalizowany stan repozytorium, aktualizacja svnadmin nie wykonuje”. - patrz także dokumentacja aktualizacji svnadmin
źródło
Ivan ma dobrą wskazówkę, która działa, próbowałem i jest to bardzo proste.
Jedną z rzeczy, których mi brakowało w przykładzie Ivans, które mogą być przydatne dla innych, są:
Dawny.
Nie kieruj svnadmin do katalogu db, ale do katalogu zawierającego katalog db.
źródło