Close

Переход

В этом руководстве по миграции рекомендуется односторонняя синхронизация из SVN в Git во время переходного периода. Это означает, что пока ваша команда привыкает к работе с Git, ее участникам все равно нужно использовать только исходный репозиторий SVN. Когда вы будете готовы к переходу, репозиторий SVN будет заморожен в текущем на тот момент состоянии. Затем разработчики начнут создавать коммиты в свои локальные репозитории Git и делиться ими через Bitbucket.

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

Отдельный переход с SVN на Git способствует интуитивно понятной миграции. К этому моменту все ваши разработчики разберутся в новых рабочих процессах Git, которыми им предстоит пользоваться, и у них будет достаточно времени, чтобы опробовать команды Git в локальных репозиториях, клонированных из Bitbucket.

На этой странице вы найдете информацию о последнем шаге миграции.


Синхронизация репозитория Git


Прежде чем завершить миграцию на Git, убедитесь, что ваш репозиторий Git содержит все новые изменения, внесенные в репозиторий SVN. Это можно сделать с помощью того же процесса, который описан для этапа синхронизации.

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

Резервное копирование репозитория SVN

Несмотря на то что вы по-прежнему можете просмотреть в перенесенном репозитории историю проекта, сохраненную до перехода в Git, рекомендуется создать резервную копию репозитория SVN на тот случай, если вам понадобится изучить необработанные данные SVN. Простой способ создать резервную копию репозитория SVN — это выполнить приведенную ниже команду на машине, где размещен центральный репозиторий SVN. Если ваш репозиторий SVN размещен на Linux-машине, вы можете использовать следующую команду:

svnadmin dump  | gzip -9 > 
базы данных
Связанные материалы

Перемещение полного репозитория Git

Логотип Bitbucket
СМ. РЕШЕНИЕ

Изучите Git с помощью Bitbucket Cloud

Replace svn-repo with the file path of the SVN repository that you backing up, and replace backup-file with the file path of the compressed file containing the backup.

Установка режима «только чтение» для репозитория SVN

К этому моменту все ваши разработчики должны освоить Git. Чтобы обеспечить соблюдение соглашения, вы можете установить для репозитория SVN режим «только чтение». Этот процесс может отличаться в зависимости от настроек сервера, но если вы используете демон svnserve, то это можно сделать, отредактировав файл conf/svnserve.conf репозитория SVN. Раздел [general] должен содержать следующие строки:

anon-access = read auth-access = read

Они говорят svnserve, что анонимные и аутентифицированные пользователи имеют право доступа только на чтение.

Резюме


Из этой статьи вы узнали, как перенести проект в Git. Теперь ваша команда может работать с чистым рабочим процессом Git и пользоваться всеми преимуществами распределенной разработки. Отличная работа!


Поделитесь этой статьей

Рекомендуемые статьи

Добавьте эти ресурсы в закладки, чтобы изучить типы команд DevOps или получать регулярные обновления по DevOps в Atlassian.

Люди сотрудничают друг с другом, используя стену со множеством инструментов

Блог Bitbucket

Рисунок: DevOps

Образовательные программы DevOps

Демонстрация функций в демо-зале с участием экспертов Atlassian

Как инструмент Bitbucket Cloud работает с Atlassian Open DevOps

Подпишитесь на информационную рассылку по DevOps

Thank you for signing up