Необходимость установить флаг сброса с трюфельной миграцией

У меня странная проблема, когда мои миграции не развертываются при запуске truffle migrate --network development. Но когда я запускаю truffle migrate --network development --reset, контракты развертываются правильно. Кто-нибудь знает, в чем может быть причина этого?

У меня версия трюфеля 4.0.1 и версия солидности 0.4.18.

Это пример консольных сообщений, которые я вижу. На этом рисунке я только что добавил промежуточную сеть в свой truffle.js перед запуском этих команд миграции. (Ожидается ошибка аутентификации)

введите описание изображения здесь

У меня точно такая же проблема. Я даже протестировал его с контрактом Metacoin.sol, созданным с помощью truffle init.

Ответы (1)

Вы ранее переносили контракты? Если вы выполнили предыдущую миграцию и не изменили никаких контрактов/деталей миграции, миграция трюфеля ничего не сделает. --resetзаставляет его выполнить всю миграцию с самого начала.

https://truffle.readthedocs.io/en/beta/getting_started/migrations/

$ трюфельная миграция

Это запустит все миграции, расположенные в каталоге миграций вашего проекта. Если ваши миграции ранее выполнялись успешно, truffle migrate начнет выполнение с последней выполненной миграции, запуская только вновь созданные миграции. Если новых миграций не существует, truffle migrate вообще не будет выполнять никаких действий. Вы можете использовать параметр --reset для запуска всех миграций с самого начала.