正文经授权转自 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,并累加依赖到的扩张包;

  2. 运行 composer install,安装扩展包并生成 composer.lock

  3. 提交 composer.lock 到代码版本控制器中,如:git;

流程二:项目协作者安装现有项目

  • 克隆项目后,根目录下直接运行 composer installcomposer.lock
    中安装 指定版本 的扩张包以及其依赖;

此流程适用于生产环境代码的安排。

流程三:为项目填补加新扩张包

  • 使用 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地图