如何避免作曲家放弃更改消息

2022-08-30 14:25:15

我正在通过作曲家更新symfony verdors。我总是使用:

php composer.phar update

但是最新版本的 composer,在更新之前每个包都显示如下消息:

  - Updating doctrine/data-fixtures dev-master (a95d783 => a28b6bd)
The package has modified files:
M .gitignore
M .gitmodules
M LICENSE
M README.md
M UPGRADE
M composer.json
M lib/Doctrine/Common/DataFixtures/AbstractFixture.php
M lib/Doctrine/Common/DataFixtures/DependentFixtureInterface.php
M lib/Doctrine/Common/DataFixtures/Event/Listener/MongoDBReferenceListener.php
M lib/Doctrine/Common/DataFixtures/Event/Listener/ORMReferenceListener.php

-10 多个文件已修改,选择“v”查看完整列表 放弃更改 [y,n,v,s,?]?

如何避免这种情况?


答案 1

设置作曲家配置以放弃更改(请参阅:https://github.com/composer/composer/pull/1188):

php composer.phar config --global discard-changes true

答案 2

@lemats和@reza-sanaie的答案都是不完整的,因为--no-interaction(-n)作曲家的选项需要有一个真正的更新,没有任何问题(见 https://github.com/composer/composer/pull/1188#issuecomment-16011533)。

所以之后

php composer.phar config --global discard-changes true

或在修改 composer.json 之后

"config": {
    "discard-changes": true
},  

php composer.phar update -n

推荐