我有一個運行遷移命令的部署腳本:
# Clear cache
php bin/console cache:clear --env=prod
# Migrate database
php bin/console doctrine:migrations:diff --env=prod
php bin/console doctrine:migrations:migrate --no-interaction --allow-no-migration --env=prod
對于沒有進行物體更改的每次部署,輸出包括:
14:18:01 CRITICAL [console] Error thrown while running command "doctrine:migrations:diff --env=prod". Message: "No changes detected in your mapping information." ["exception" => Doctrine\Migrations\Generator\Exception\NoChangesDetected^ { …},"command" => "doctrine:migrations:diff --env=prod","message" => "No changes detected in your mapping information."]
In NoChangesDetected.php line 13:
No changes detected in your mapping information.
這很煩人,這樣的“CRITICAL”錯誤是不必要的。只有例外訊息就足夠了,資訊量也足夠了。
有沒有辦法只顯示例外訊息“在您的映射資訊中未檢測到更改”。或者,如果沒有更改,最好不要執行腳本?
正在使用的版本:
# composer.json
"doctrine/doctrine-bundle": "1.12.*",
"doctrine/doctrine-migrations-bundle": "2.1.*",
"doctrine/migrations": "2.2.*",
"doctrine/orm": "2.6.*",
uj5u.com熱心網友回復:
如果你運行命令:
bin/console doctrine:migrations:diff --help
您可以看到其中一個選項是:
--allow-empty-diff Do not throw an exception when no changes are detected.
--allow-empty-diff通過添加標志來修改您的腳本。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/460445.html
