Как избежать сообщения об изменениях composer

Я обновляю symfony verdors через composer. Я всегда делаю так:

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,?]?

Как избежать этого?

4 ответов


настройка конфигурации composer для отмены изменений (см.: https://github.com/composer/composer/pull/1188):

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

оба ответа @lemats и @reza-sanaie являются неполными, поскольку опция -- no-interaction (-n) composer требуется для реального обновления без каких-либо вопросов (см. https://github.com/composer/composer/pull/1188#issuecomment-16011533).

Так

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

или после изменения композитор.в JSON

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

использовать

php composer.phar update -n

альтернатива решению @lemats вы можете изменить композитор.файл json с:

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

это ничего не стоит для этой опции, чтобы пнуть, вы должны работать в --no-interaction режим

php composer.json install --no-interaction

хотя я согласен с @Seldaek, вы не должны изменять эти файлы поставщиков, но иногда вы вынуждены исправлять его: (


Как насчет не изменять файлы поставщика? Если они будут изменены, скорее всего, это из-за некоторых испорченных настроек git для окончаний строк. См.https://help.github.com/articles/dealing-with-line-endings