2010-07-11 2 views
2

Насколько я понимаю, точка миграции - это то, что вы можете вернуть базу данных в известное состояние на последних этапах разработки.Прокачка Миграции?

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

ответ

4

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

Что касается вашего вопроса: обязательно. Если вы создадите новую модель, а затем через несколько минут решите, что «этот столбец может быть просто строкой вместо текста», откат вашей миграции и изменение столбца, а затем снова выполнить миграцию. Нет необходимости создавать новую миграцию.

Если вы не указали, вы уже перенесли переход к исходному контролю, который может быть выбран другими разработчиками, или вы уже применили миграцию на производственном сервере. Затем вы должны использовать новую миграцию.

1

В качестве дополнения к rspeicher я ограничиваю ограничение того, была ли выпущена миграция, а не была ли она доступна другим разработчикам. Если он все еще находится в предварительном выпуске, тогда команда разработчиков может быть проинформирована о необходимости запуска миграции для любых обновлений репозитория мастер-кода с использованием перехватов после извлечения для используемого SCM. Это справедливо для любого изменения управления конфигурацией, а не только для миграции. Например, изменение реализации чего-либо в папке инициализатора может не повлиять на исполняемый экземпляр скрипта/сервера в режиме разработки. Это, в конечном счете, необходимый механизм для большинства команд в большинстве технологий, а также для некоторых конфигураций непрерывной интеграции. Или вам нужны отличные коммуникационные каналы в команде, чтобы убедиться, что все знают, что необходимо изменить конфигурацию и перезапустить.

Смежные вопросы