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

Symfony 为什么在使用Composer更新依赖项时parameters.yml会丢失更改?,symfony,composer-php,Symfony,Composer Php,当我运行:php composer.phar update在composer.json中向require dev添加一行代码后,我发现parameters.yml会丢失我从其初始状态(首次安装Symfony2标准版时)所做的所有更改。这背后的原因是什么?您应该将参数存储在parameters.yml.dist中,因为parameters.yml是在每次编写器更新后从.dist文件重新生成的 .dist文件可以添加到您选择的VCS中,当有人调出更改时,Symfony将检查parameters.ym

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

您应该将参数存储在
parameters.yml.dist
中,因为
parameters.yml
是在每次编写器更新后从
.dist
文件重新生成的


.dist
文件可以添加到您选择的VCS中,当有人调出更改时,Symfony将检查
parameters.yml.dist
与本地
parameters.yml
之间是否存在任何差异,将要求用户为任何新参数提供值,并将其添加到本地
parameters.yml
文件中。

此行为的真正原因是脚本希望删除过时的参数

如果需要保留过期参数,可以在配置中使用保留过期参数:

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

更多信息请参见捆绑文档

Hi@whiteletsinblankpapers欢迎您!我发布这篇文章只是为了完成论证,当您说“Symfony将检查parameters.yml.dist和local parameters.yml之间是否有任何差异”时,您的意思是在“composer update/install”期间。我说得对吗?