Kończąc projekt na uczelnię Zły Bill Steve mnie podkusił i postanowiłem rozklepać całość na moduły. Będąc przekonanym, że za pomocą mavenaW będzie to stosunkowo proste dzielnie zabrałem się do pracy. Niestety olałem całkowicie fakt istnienia repozytorium SVNW dla projektu. Spowodowało to, że struktura repozytorium uległa uszkodzeniu.

Jak naprawić repozytorium?

Naprawa struktury repozytorium jest stosunkowo prosta. W pierwszej kolejności należy odłączyć projekt od repozytorium. Spowoduje to usunięcie danych o svnie ze struktury katalogów projektu. Następnie tworzymy strukturę, która będzie nam odpowiadała. Kolejnym krokiem jest checkout uszkodzonej wersji do nowego folderu, najlepiej na drugim końcu dysku. Ta wersja jest spójna, ponieważ awarii uległy dane lokalne, a to spowodowało brak możliwości synchronizacji. Usuwamy wszystkie pliki poza .svn z katalogu głównego w nowej lokalizacji i commit. W ten sposób repozytorium odzyskało cnotę. Możemy podłączyć nasz nowy i uporządkowany już projekt do repo.

Profilaktyka

Jeżeli chcemy uniknąć uszkodzenia lokalnej konfiguracji SVN należy przed przystąpieniem do zmian w projekcie odpiąć go od repozytorium. Dopiero po zakończeniu refaktoryzacji i przetestowaniu całości wpinamy się do repo.