|-转 慎用composer update
不出问题还好,出了问题一堆事情
https://blog.csdn.net/wulove52/article/details/78392663
问题说明
我们经常要往现有的项目中添加扩展包,有时候因为文档的错误引导,如下图来自 这个文档 的:
composer update 这个命令在我们现在的逻辑中,可能会对项目造成巨大伤害。
因为 composer update 的逻辑是按照 composer.json 指定的扩展包版本规则,把所有扩展包更新到最新版本,注意,是 所有扩展包,举个例子,你在项目一开始的时候使用了 monolog,当时的配置信息是
"monolog/monolog": "1.*",
安装的是 monolog 1.1 版本,而一个多月以后的现在,monolog 已经是 1.2 了,运行命令后直接更新到 1.2,这时项目并没有针对 1.2 进行过测试,项目一下子变得很不稳定,情况有时候会比这个更糟糕,尤其是在一个庞大的项目中,你没有对项目写完整覆盖测试的情况,什么东西坏掉了你都不知道。
那应该使用哪个命令呢?install, update 还是 require ?
接下来我们一一解释。
简单解释
package - 从 composer.json 或者对应包的配置,并更新到最新; new/package - 添加安装 new/package, 可以指定版本,如: composer require new/package ~2.5.
流程
下来介绍几个日常生产的流程,来方便加深大家的理解。
流程一:新项目流程
创建 composer.json,并添加依赖到的扩展包;
运行 composer install,安装扩展包并生成 composer.lock;
提交 composer.lock 到代码版本控制器中,如:git;
流程二:项目协作者安装现有项目
克隆项目后,根目录下直接运行 composer install 从 composer.lock 中安装 指定版本 的扩展包以及其依赖;
...
浏览更多内容请先登录。
立即注册
分享的网址网站均收集自搜索引擎以及互联网,非查问网运营,查问网并没有提供其服务,请勿利用其做侵权以及违规行为。
更新于:2022-04-12 03:41:49
相关内容
composer的安装和使用知识整理
慎用composer update
Could not open input file: composer.phar报错
composer在国内使用效果很差,总提示没有找到要下载的文件
compser安装后无法使用,php7.4版本下安装的
win10系统 安装好composer后 cmd 命令行下输入composer提示不是内部或外部的命...
使用composer安装项目需要注意的
Windows环境下Composer的安装教程遇到的问题及解决方法
= 8.0.0".">解决Yii2里引入自定义文件 composer dump-autoload后报错:Composer detect...
composer 设置Github全局 token,在所有项目上都使用阿里云镜像
Packagist.org 明确了 Composer 1.x 被弃用的时间表
推荐内容