Подтвердить что ты не робот

Как происходит миграция рельсов при слиянии ветвей функций?

В rails 3, как задача db:migrate определяет, какие миграции выполняться?

Рассмотрим следующий прецедент:

  • разработчик A создает миграцию в timestamp t1 в своей ветке свойств
  • разработчик B создает миграцию в timestamp t2 в своей ветке свойств
  • разработчик B объединяет свою ветвь, db:migrate запускается на сервере
  • разработчик А объединяет свою ветвь

Так как t1 ранее, выполняется ли переход разработчика A или нет?

Я заметил таблицу schema_migrations, и мне интересно, будет ли выполняться какая-либо миграция, которая еще не запущена.

4b9b3361

Ответ 1

Ваша догадка правильная - любая миграция не в schema_migrations будет запущена, и они будут выполняться в порядке времени по возрастанию.

В этом случае следующий раз db:migrate запускается после слияния A, запускается миграция t1.