Как перейти на новую систему контроля версий - PullRequest
2 голосов
/ 30 октября 2009

Мой работодатель поручил мне стать нашим новым администратором контроля версий. В настоящее время мы используем две разные системы контроля версий для двух разных баз кода. Код / функциональность в двух базах кода частично совпадают. Мы будем перемещать обе базы кода в новую систему контроля версий.

Я ищу идеи о том, как это сделать. Я полагаю, что мы могли бы добавить две базы кода в новый элемент управления версиями как братьев и сестер в иерархии нового депо и постепенно удалить избыточность, постепенно продвигаясь к третьему брату в иерархии, в конечном итоге работая исключительно с третьим братом. Тем не менее, это всего лишь 30 000 футов, а не решение проблемы. Любые идеи, ошибки, процедуры, чтобы избежать катастрофы? Спасибо

Ответы [ 3 ]

2 голосов
/ 30 октября 2009

Git можно настроить таким образом, чтобы все клиенты svn, git и cvs могли подключаться. Таким образом, вы можете перейти к центральному репозиторию Git, но люди, которые все еще привыкли к svn, могут продолжать его использовать.

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

1 голос
/ 30 октября 2009

Мой совет - поэкспериментировать с несколькими «тестовыми» миграциями. Посмотрите, как это происходит, и настройте ваши сценарии по мере необходимости.

Затем, как только ваш сет, вы можете выполнить его по-настоящему и все готово. Архивируйте свои старые репозитории тоже.

Еще одно место, где вы можете найти вдохновение - OpenOffice.org . Они находятся в середине перехода от SVN к Mercurial . Вероятно, они опубликовали информацию о своей миграционной работе.

0 голосов
/ 30 октября 2009

Вопросы для рассмотрения:

  • Какую историю вы перенесете?
  • Как долго вам нужно будет продолжать использовать старые системы для исправлений и т. Д.?
  • Как долго вам нужно будет поддерживать старые системы для доступа к исторической информации?
  • Предоставляет ли новая целевая VCS автоматический или квазиавтоматический способ миграции с одной из двух старых VCS?
  • Как вы будете согласовывать ветвящиеся системы в двух старых VCS с моделью, используемой в новом VCS?
  • Будет ли тегирование работать правильно?
  • Можно ли переносить теги (что не имеет значения, если вы не импортируете много истории)?
  • Какие средства контроля доступа применяются к старой VCS, которую необходимо воспроизвести в новой?
  • Какие средства контроля доступа должны применяться к новому VCS?

Это, по крайней мере, отправная точка - я, без сомнения, забыл много важных тем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...