Migruj

W tym przewodniku zaleca się jednokierunkową synchronizację z SVN do Git podczas okresu przejściowego. Oznacza to, że gdy Twój zespół zaznajamia się z Git, powinien nadal w pełni korzystać tylko z oryginalnego repozytorium SVN. Gdy wszystko będzie gotowe do zmany, repozytorium SVN powinno zostać zamrożone w stanie, w którym się znajduje. Następnie programiści powinni zacząć korzystać z lokalnych repozytoriów Git i udostępniać je przez Bitbucket.

/wac/git-microsite/images/tutorials/migrating/migrating-migrate/01.svg

Dyskretne przejście z SVN na Git sprawia, że migracja jest bardzo intuicyjna. Wszyscy Twoi programiści powinni już rozumieć nowe przepływy pracy Git i powinni mieć dużo czasu na ćwiczenie korzystania z poleceń Git w lokalnych repozytoriach sklonowanych z Bitbucket.

Na tej stronie przeprowadzimy Cię przez ostatni etap migracji.

Synchronizacja repozytorium Git

Przed sfinalizowaniem migracji Git należy się upewnić, że repozytorium Git zawiera wszelkie nowe zmiany wprowadzone do repozytorium SVN. Można to zrobić, wykorzystując proces opisany w fazie Synchronizacja.

git svn fetch
java -Dfile.encoding=utf-8 -jar ~/svn-migration-scripts.jar sync-rebase
java -Dfile.encoding=utf-8 -jar ~/svn-migration-scripts.jar clean-git --force

Tworzenie kopii zapasowej repozytorium SVN

Chociaż nadal możesz zobaczyć historię projektu sprzed Git w zmigrowanym repozytorium, dobrym pomysłem jest wykonanie kopii zapasowej repozytorium SVN na wypadek, gdyby kiedykolwiek trzeba było sprawdzić surowe dane SVN. Łatwym sposobem wykonania kopii zapasowej repozytorium SVN jest uruchomienie następujących poleceń na urządzeniu, na którym znajduje się centralne repozytorium SVN. Jeśli repozytorium SVN znajduje się na urządzeniu z systemem Linux, możesz użyć następujących poleceń:

svnadmin dump  | gzip -9 >

Zastąp svn-repo ścieżką do pliku repozytorium SVN, którego kopię zapasową wykonujesz, a backup-file ścieżką do skompresowanego pliku zawierającego kopię zapasową.

Ustawianie repozytorium SVN tylko do odczytu

Wszyscy Twoi programiści powinni korzystać z Git. Aby wymusić tę zmianę, możesz ustawić repozytorium SVN jako tylko do odczytu. Proces ten może się różnić w zależności od konfiguracji serwera, ale jeśli korzystasz z demona svnserve, możesz to zrobić, edytując plik conf/svnserve.conf. Jego sekcja [general] powinna zawierać następujące wiersze:

anon-access = read auth-access = read

Do pliku svnserve przekazywana jest informacja, że zarówno anonimowi, jak i uwierzytelnieni użytkownicy mają tylko uprawnienia do odczytu.

Podsumowanie

I to wszystko, jeśli chodzi o migrację projektu do Git. Twój zespół może teraz pracować wyłącznie w ramach przepływu pracy Git, korzystając ze wszystkich zalet programowania rozproszonego. Dobra robota!

Polecane dla Ciebie

Blog Bitbucket

Ścieżka szkoleniowa DevOps

Dowiedz się więcej o Git

Znajdź więcej przewodników i zasobów Git w tym centrum.