2009-09-22 10 views

Odpowiedz

179

Zakładając, że katalog praca pracuje od tułowia:

prawym przyciskiem myszy na „folderu roboczego root” (termin ten odnosi się zawsze do Windows Explorer) i zrobić svn update zaktualizować folder roboczy do najnowszej bagażniku.

Upewnij się, że posiadany produkt jest stabilny.

Kliknij prawym przyciskiem myszy główny folder roboczy i wykonaj svn commit, aby upewnić się, że wszelkie lokalne zmiany zostały zatwierdzone w magistrali.

Kliknij prawym przyciskiem myszy główny folder roboczy i wykonaj svn repo-browser.

Jeśli nie masz jeszcze folderu oddziałów w repozytorium: kliknij prawym przyciskiem myszy folder tuż nad folderem trunkingu i zrób "utwórz folder" i utwórz folder oddziałów (na przykład, jeśli twój bagażnik to http://myserver/svn/MyRepository/MyProj/Trunk, utworzyć http://myserver/svn/MyRepository/MyProj/Branches).

Kliknij prawym przyciskiem myszy folder trunk i wykonaj Copy To: i wprowadź nazwę nowego folderu dla oddziału. Na przykład: http://myserver/svn/MyRepository/MyProj/Branches/MyNewBranch. (Nie martw się, że to zmarnuje dużo miejsca ... nazywa się to "tanią kopią" ... w rzeczywistości nie kopiuje zawartości plików, chyba że ulegną one zmianie).

Zamknij przeglądarkę.

Kliknij prawym przyciskiem myszy katalog główny folderu roboczego i wykonaj: svn switch i wybierz nazwę folderu dla nowego oddziału (na przykład http://myserver/svn/MyRepository/MyProj/Branches/MyNewBranch). Pozostaw wszystko inne domyślnie.

Teraz pracuj w swoim oddziale. Po przejściu do kamieni milowych kliknij prawym przyciskiem myszy główny folder roboczy i wykonaj svn commit, aby zatwierdzić swój oddział. (To nie będzie widoczne w bagażniku).

Jeśli inni pracują w tej samej gałęzi, okresowo wykonaj svn update z głównego folderu roboczego. To zaktualizuje się z oddziału. (NIE otrzyma aktualizacji z bagażnika).

Niezależnie od tego, czy inni pracują w tej samej branży, należy okresowo scalać zmiany z pnia, aby upewnić się, że oddział nie będzie zbyt trudny do późniejszej integracji. Aby przeprowadzić okresowe scalanie: kliknij prawym przyciskiem myszy katalog główny folderu roboczego i wykonaj svn merge. Wybierz "Scal zakres wersji". W sekcji "Adres URL do scalenia" wybierz bagażnik (na przykład http://myserver/svn/MyRepository/MyProj/Trunk). Pozostaw Revision Range pustą i pozostaw wszystko inne w spokoju. Kliknij Następny. Pozostaw wszystko w spokoju i kliknij Scalenie. Upewnij się, że wszystko nadal działa ... napraw, jeśli nie. Gdy będziesz zadowolony, wykonaj regularne svn update z folderu głównego pracy, aby zaktualizować go z oddziału (jest to konieczne, nawet jeśli jesteś jedynym pracującym w oddziale, aby spełnić wymagania SVN). Następnie wykonaj svn commit, aby zatwierdzić scalone zmiany trunkingowe do gałęzi. Możesz powtarzać ten krok cyklicznie tyle razy, ile chcesz.

Gdy twój oddział jest gotowy do integracji, wykonaj powyższy krok po raz ostatni i wykonaj ostateczne testy. Wykonaj ostateczne zatwierdzenie do oddziału.

Kliknij prawym przyciskiem myszy na folderze roboczym głównym i wykonaj kolejne svn switch, tym razem przełączając się na trunk (na przykład http://myserver/svn/MyRepository/MyProj/Trunk).Będzie to skutkowało zasadniczo "cofnięciem" całej pracy wykonanej w twojej branży, ale nie martw się ... dostaniesz swoją pracę z powrotem. (Będzie również zgłaszać wiele aktualizacji plików, które nie zostały zmienione w oddziale, ale są to tylko zmiany "właściwości SVN" ... nie martw się o nich.)

Kliknij prawym przyciskiem myszy na folderze roboczym i wykonaj svn merge. Tym razem wybierz "Reintegrate a Branch". Dla adresu URL umieść w swoim oddziale (na przykład http://myserver/svn/MyRepository/MyProj/Branches/MyNewBranch). Resztę zostaw sam i kliknij Dalej. Pozostaw wszystko w spokoju i kliknij Scalenie. Masz teraz całą pracę, którą wykonałeś w swoim oddziale, a także bieżącą pracę z bagażnika.

Wykonaj test końcowy. Wszystko powinno działać, ponieważ powinien to być ten sam zestaw plików, które miałeś w swoim ostatnim teście w oddziale. Kliknij prawym przyciskiem myszy na folderze roboczym root i wykonaj svn commit. Zaakceptuj wszystko, nawet pliki, których nie używasz w swojej branży (po prostu mają "zmiany właściwości SVN", ale ich zatwierdzenie pomaga SVN śledzić wszystkie poprawki).

Pień ma teraz całą pracę oddziału, jak również całą pracę wykonaną w bagażniku podczas pracy w oddziale i wszystko działa. Ponadto SVN ma pełną historię wszystkich plików, nawet wersje, które zostały sprawdzone podczas pracy w oddziale.

Opcjonalnie: przejdź do przeglądarki Repo, kliknij prawym przyciskiem myszy folder oddziału (na przykład http://myserver/svn/MyRepository/MyProj/Branches/MyNewBranch) i wykonaj polecenie "usuń". Nie będzie to miało wpływu na bagażnik i nie potrzebujesz już gałęzi. (Nawet jeśli jesteś naprawdę paranoikiem, nie martw się, ponieważ możesz nawet odzyskać usuniętą gałąź z przeglądarki Repo w dowolnej chwili, jeśli naprawdę potrzebujesz.)

Prosimy o komentarz!

+7

725 słów jest proste? – RedFilter

+32

Powiedziałem "najprostszy", a nie "prosty" :) – JoelFan

+12

To było bardzo pomocne, dziękuję! – Funka

Powiązane problemy