Odpowiedź Yvesa Martina działała dla nas świetnie w przypadku wielu kopii roboczych z SVN 1.8, ale ostatecznie natrafiliśmy na przypadki, w których to nie działało.
Uruchomienie polecenia Yves bez „where id = 1” działało we wszystkich przypadkach dla nas:
$ sqlite3 .svn/wc.db 'update REPOSITORY set uuid="1c0d1ec1-2326-0410-bef5-eb29cddfc032"'
Badając, dlaczego tak się stało, dowiedziałem się, że podczas przenoszenia repozytorium przechowywanych jest wiele identyfikatorów UUID, w przeciwieństwie do intuicji Yvesa, że tak się nie powinno stać.
Nowy wpis do tabeli REPOSITORY jest dodawany po przeniesieniu zamiast aktualizowania istniejącego, przechowując przyrostowy identyfikator z nowym katalogiem głównym repozytorium i jego UUID. Tak więc przypadkami, które nie działały poprawnie, były kopie robocze, które zostały już przeniesione w przeszłości: Wydaje się, że polecenie działa, ale zmieniono tylko początkowy identyfikator UUID, a nie ten, który jest obecnie używany.
Za pomocą tego polecenia można sprawdzić listę przechowywanych katalogów głównych i UUID w kopii roboczej:
$ sqlite3 .svn/wc.db 'select id,uuid,root from REPOSITORY'
W końcu zauważę, że musiałem użyć innego zestawu cytatów dla plików wiersza poleceń / plików wsadowych systemu Windows, w następujący sposób:
> sqlite3.exe .svn\wc.db "update REPOSITORY set uuid='1c0d1ec1-2326-0410-bef5-eb29cddfc032'"