2009-02-05 14 views
12

I odkryli, że kiedy trzeba zmienić nazwę klasy Java (a tym samym pliku źródłowego) lub trzeba zmienić nazwę pakietu (a zatem przenieść plik źródłowy [s]), mogę albo:Jak korzystać z narzędzi do refaktoryzacji Eclipse i zachować synchronizację z SVN przez Subclipse?

  1. Użyj ładnych i przydatnych narzędzi do refaktoryzacji Eclipse, które są świetne, ponieważ wszystkie zadania kaskadowe są dla mnie wykonywane. Jednakże, mam później trudną walkę z Subversion, aby zreplikować zmiany z powrotem do repozytorium.
  2. Mogę wydać najpierw nazwy/ruchy w Subversion, zaktualizować moje lokalne, a następnie narzędzia refaktoryzacji w Eclipse nie działają.

Czy ktoś może doradzić w sprawie preferowanej procedury?

Odpowiedz

10

Od wydania 1.4.x Subclipse radzi sobie z tym całkiem dobrze. Jeśli masz błędy, zgłoś je. W poprzednich wydaniach radził sobie z pewnymi sytuacjami, ale nie z innymi. Było to spowodowane ograniczeniami Subversion, które zostały naprawione w SVN 1.5. Na przykład przed wersją SVN 1.5, jeśli zmieniono nazwę folderu, nie można również zmienić nazwy pliku w folderze (do czasu zatwierdzenia folderu). Tego typu rzeczy były bardzo popularnymi refaktoringami, a SVN stanąłoby im na drodze.

Teraz wszystko działa całkiem nieźle.

Mark

3

Czy próbowałeś już subversive? Refaktoryzacja wydaje mi się odpowiednia dla mnie.

Właściwie, próbowałem również subclipse i wydaje się, że radzi sobie z tym dobrze, przynajmniej z wersją 1.4.7. Po prostu próbowałem zmienić nazwę pakietu i klasy. Eclipse oznacza starą jako usuniętą i dodaje nową, zaplanowaną do dodania do repozytorium.

+0

Hej dzięki za to. Używam 1.2. Coś. Mam zamiar uaktualnić, ale z jakiegoś powodu jest to zawsze kłopot. – Nicholas

-1

Subclipse zajmie się ruchami/nazwami svn, gdy zostanie zmieniony w środowisku Eclipse.

+2

Powiedział, że jest już zainstalowany, jest w tytule pytania –

4

Nienawidzę wejść i powiedzieć "ur doin it rong", ale od linii tematycznej wspomnieć Subclipse - Subclipse integruje się z narzędziami refaktoryzacji Eclipse. Podobnie jak Subversive. Gdy zmienisz nazwę klasy, wykona ona pod Tobą "svn mv". Nigdy nie powinieneś próbować replikować tych ruchów ręcznie.

Zastanawiam się, czy z jakiegoś powodu Subclipse nie dołącza do twojego projektu - jeśli nie wie, że twój projekt to projekt Subversion. Wtedy oczywiście nic by nie dało.

Jeśli nie korzystasz z Subclipse/Subversive ... start. :)

+0

Używam Subclipse, ale z jakiegoś powodu nie wydaje żadnych poleceń SVN, gdy ja refactor. Inne operacje "Zespół" pojawiają się w konsoli po uruchomieniu, ale nie w celu refaktoryzacji. Być może jest to starsza wersja, lub jest w jakiś sposób hosed. Dzięki za odpowiedzi. – Nicholas

Powiązane problemy