Ошибка перегонного куба: пока поддерживается только одна головка

При запуске команды alembic revision для создания нового сценария ревизии я получаю следующую (не особенно полезную) ошибку:

 $ alembic -c <my-config>.ini revision -m "example message"
   Only a single head supported so far...

Подразумевается, что я каким-то образом оказался с двумя HEAD в моей системе Alembic, хотя я не совсем уверен, что это значит.

В нашем рабочем процессе сценарии миграции написаны несколькими разработчиками, поэтому я предполагаю, что каким-то образом два разработчика одновременно создали ревизию, которая ссылается на один и тот же идентификатор «изменения».

  • Это то, что означает это сообщение об ошибке?
  • Каков наилучший способ определить нарушающие сценарии миграции?
  • Каков наилучший способ исправить эту ошибку (имея в виду, что я считаю, что все миграции в нашем контроле версий уже применены к БД)?

person Chris W.    schedule 05.02.2015    source источник


Ответы (1)


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

# revision identifiers, used by Alembic.
revision = '234342f7fc2d'
down_revision = '3981426f2c20'

Моя оскорбительная версия оказалась «лишней» неиспользованной, поэтому я просто удалил ее.

person Chris W.    schedule 06.02.2015