Мне нужно установить только 1 пакет для моего дистрибутива SF2 (DoctrineFixtures).
Когда я бегу
php composer.phar update
я получил
- Updating twig/twig (dev-master 39d94fa => v1.13.0)
The package has modified files:
M CHANGELOG
M doc/filters/batch.test
M doc/filters/index.rst
M doc/filters/url_encode.rst
M doc/functions/index.rst
M doc/tags/index.rst
M doc/tests/index.rst
M lib/Twig/Autoloader.php
M lib/Twig/Compiler.php
M lib/Twig/CompilerInterface.php
-10 more files modified, choose "v" to view the full list
Похоже, последний разработчик отредактировал много файлов внутри вендора.
Чтобы обойти это, я попытался
php composer.phar update <package_name>
Но это не похоже на работу. Как я могу обновить / установить только одну библиотеку из composer.json?
symfony
composer-php
Инструмент
источник
источник
composer.json
?Ответы:
Для установки
doctrine/doctrine-fixtures-bundle
с версией2.1.*
и минимальной стабильностью@dev
используйте это:затем обновить только этот единственный пакет:
источник
require
ранее или ранее загруженный как зависимость - будет автоматически обновляться при запускеcomposer require <package>:<version-constraint>@<stability-flag>
команды?Если вы просто хотите обновить несколько пакетов, а не все, вы можете перечислить их так:
Вы также можете использовать групповые символы для обновления сразу нескольких пакетов:
source
когда они доступны.dist
когда они доступны.php
,hhvm
,lib-*
иext-*
требование и заставить установку , даже если локальная машина не выполняет их. Смотрите также параметрplatform
конфигурации .require-dev
(это поведение по умолчанию).require-dev
. Генерация автозагрузчика пропускаетautoload-dev
правила.--prefer-stable
.источник
vendor/*
composer update "vendor/*"
Разница между установкой, обновлением и требованием
Предположим следующий сценарий:
composer.json
файл composer.lock
установить:
composer install parsecsv/php-parsecsv
Это установит версию
0.1.4
как указано в файле блокировкиОбновить:
composer update parsecsv/php-parsecsv
Это обновит пакет до
0.3.2
. Самая высокая версия по отношению к вашему composer.json. Запись вcomposer.lock
будет обновлена.требуется:
composer require parsecsv/php-parsecsv
Это обновит или установит самую новую версию
1.1.0
. Вашcomposer.lock
файл иcomposer.json
файл также будут обновлены.источник
composer update author/package
и потомcomposer install author/package
composer update package
достаточно, не нужно вызывать install после негоupvoted
Вы можете сделать следующий, чтобы установить новый пакет.
Затем терминал попросит вас ввести название пакета для поиска.
Затем терминал спросит версию пакета (если вы хотите иметь последнюю версию, просто оставьте это поле пустым)
Затем вы просто нажимаете клавишу возврата. Терминал запросит другой пакет, если вы не хотите устанавливать другой, просто нажмите клавишу возврата, и все будет готово.
источник
Вы можете использовать следующую команду для обновления любого модуля с его зависимостями
источник
Чтобы гарантировать, что composer обновит один пакет, уже установленный до последней версии в пределах ограничений версии, которые вы установили в composer.json, удалите пакет из поставщика и затем выполните:
источник
Просто использовать
лайк
если пакет не находится в папке vendor .. composer установите его, и если пакет существует, обновите пакет composer до последней версии.
источник
Потому что вы хотели установить конкретный пакет «Мне нужно установить только 1 пакет для моего дистрибутива SF2 (DoctrineFixtures)».
php composer.phar require package/package-name:package-version
было бы достаточноисточник