本文经授权转自 PHPHub
社区

同时也有关各位关心本人的
GitHub

难点求证

小编们日常要往现有的序列中添加增加包,有时候因为文档的错误指引,如下图来源
其一文档
的:

json 1

file

composer update 这些命令在我们以后的逻辑中,大概会对项目致使巨大风险。

因为 composer update 的逻辑是比照 composer.json
指定的恢弘包版本规则,把装有扩大包更新到最新版本,注意,是
所有扩展包,举个例子,你在项目一初叶的时候利用了
monolog,当时的计划音讯是

"monolog/monolog": "1.*",

设置的是 monolog 1.1 版本,而七个多月今后的以后,monolog 已经是 1.2
了,运转命令后平素更新到 1.2,那时项目并不曾针对性 1.2
进行过测试,项目一下子变得很不平稳,情状有时候会比那么些更倒霉,尤其是在三个特大的序列中,你未曾对品种写完整覆盖测试的情况,什么事物坏掉了您都不知底。

那应该运用哪个命令呢?install, update 依旧 require ?

json 2

file

接下去我们种种解释。

简单易行表达

  • composer install – 如有 composer.lock 文件,间接设置,否则从
    composer.json 安装新型扩充包和依靠;
  • composer update – 从 composer.json 安装新型增添包和凭借;
  • composer update vendor/package – 从 composer.json
    可能对应包的布局,并立异到新型;
  • composer require new/package – 添加设置 new/package,
    可以指定版本,如: composer require new/package ~2.5.

流程

接下去介绍多少个平日生产的流水线,来便于加深大家的知道。

流程一:新类型流程

  1. 创建 composer.json,并加上倚重到的增加包;
  • 运行 composer install,安装增加包并生成 composer.lock
  • 提交 composer.lock 到代码版本控制器中,如:git;

流程二:项目协小编安装现有项目

  • 克隆项目后,根目录下间接运维 composer installcomposer.lockjson,
    中安装 指定版本 的恢宏包以及其依赖;

此流程适用于生产环境代码的计划。

流程三:为项目添加新增添包

  • 使用 composer require vendor/package 添加扩充包;
  • 交付更新后的 composer.jsoncomposer.lock
    到代码版本控制器中,如:git;

关于 composer.lock 文件

composer.lock
文件里保存着对每七个代码看重的本子记录(见下图),提交到版本控制器中,并合作
composer install
使用,保证了团协会有着协小编开发条件、线上生产环境中运转的代码版本的一致性。

json 3

file

至于扩充包的设置格局

那就是说,准备添加二个增加包,install, update, require
多个指令都得以用来设置扩张包,采纳哪三个才是未可厚非的吗?

答案是:使用 composer require 命令

其余,在手动修改 composer.json
添加扩大包后,composer update new/package
举行点名增添包更新的方式,也可以正确的安装,然则不提出使用这种措施,因为,一旦你忘掉敲定后边的伸张包名,就会进来万劫不复的情景,别给协调留坑呀。

地点的概念不论对新手或然老手来说,都相比较模糊,首要记住这一个概念:

原来项目新添加扩充的,都应用 composer require new/package
这种艺术来设置。

完。


迎接关心 PHPHub 的天涯论坛
@PHPHub
和微信账号~

微信二维码:

相关文章

网站地图xml地图