为什么在使用Composer更新依赖项时parameters.yml会失去更改?

时间:2015-09-21 16:25:26

标签: symfony composer-php

当我在php composer.phar update中向require-dev添加一行后运行composer.json时,我发现parameters.yml丢失了我从初始状态所做的所有更改(当Symfony2时首先安装标准版)。这背后的原因是什么?

2 个答案:

答案 0 :(得分:1)

您应该将参数存储在parameters.yml.dist中,因为在每次作曲家更新后,parameters.yml文件会重新生成.dist

.dist文件可以添加到您选择的VCS中,当有人提取更改时,Symfony会检查parameters.yml.dist和本地parameters.yml之间是否存在任何差异,会询问user为任何新参数提供值,并将其添加到本地parameters.yml文件。

答案 1 :(得分:1)

这种行为确实是因为脚本想要删除过时的参数

如果你需要保留过时的params,你可以在配置中使用keep-outdated param:

{
    "extra": {
        "incenteev-parameters": {
            "keep-outdated": true
        }
    }
}

相关文档here

中的更多信息