当我运行composer install
时,它本身并没有显示有关建议的任何内容。在我们的CI环境中,它提供了一长串我想避免的建议。我想看看从缓存加载的内容的输出和那种事情,只是不想看到这个。我已经通过了文档,而且还没有能够弄清楚如何隐藏它。
这些建议(以及其他许多内容)......
symfony/security-core suggests installing symfony/expression-language (For using the expression voter)
symfony/routing suggests installing symfony/expression-language (For using expression matching)
predis/predis suggests installing ext-phpiredis (Allows faster serialization and deserialization of the Redis protocol)
phpseclib/phpseclib suggests installing ext-gmp (Install the GMP (GNU Multiple Precision) extension in order to speed up arbitrary precision integer arithmetic operations.)
phpseclib/phpseclib suggests installing pear-pear/PHP_Compat (Install PHP_Compat to get phpseclib working on PHP < 4.3.3.)
patchwork/utf8 suggests installing ext-intl (Use Intl for best performance)
monolog/monolog suggests installing aws/aws-sdk-php (Allow sending log messages to AWS services like DynamoDB)
如何隐藏此输出?
答案 0 :(得分:6)
当您对具有composer install
文件的项目运行composer.lock
时,它只会安装在composer.lock文件中锁定的版本,而不会安装任何内容。换句话说,所需的软件包和版本已经解决,只是安装它。
当您在没有composer install
文件的项目上运行composer.lock
时,Composer将解析所需的软件包及其版本,并在安装之前将其存储在composer.lock
文件中。在这种情况下,项目未设置,您会收到有关其他建议包的通知。
在第二种情况下,您无法从输出中隐藏建议的包列表(至少在撰写此答案时)。在第一种情况下,没有什么是新的,所以根本没有显示。
解决方案是将您的composer.lock
文件推送到服务器,毕竟这是一个很好的做法(您不希望生产服务器拥有除开发环境之外的其他版本的依赖项,较新版本可能会破坏您的网站。
答案 1 :(得分:4)
从编辑器1.6.3开始,有一个--no-suggest
选项可在运行composer install或composer update时隐藏所有建议。