作曲家安装和作曲家更新之间的区别

composer update

composer update 将更新我们在 composer.json 中指定的依赖项。

例如,如果我们的项目使用此配置:

"require": {
    "laravelcollective/html": "2.0.*"
}

假设我们已经实际安装了 2.0.1 版本的软件包,运行 composer update 将导致此软件包的升级(例如,如果已经发布,则为 2.0.2)。

详细信息 composer update 将:

  • 阅读 composer.json
  • 删除 composer.json 中不再需要的已安装软件包
  • 检查我们所需软件包的最新版本的可用性
  • 安装我们的软件包的最新版本
  • 更新 composer.lock 以存储已安装的软件包版本

composer install

composer install 将安装指定(锁定)版本的 composer.lock 文件中指定的所有依赖项,而不更新任何内容。

详细地:

  • 阅读 composer.lock 文件
  • 安装 composer.lock 文件中指定的包

何时安装以及何时更新

  • composer update 主要用于开发阶段,以升级我们的项目包。

  • composer install 主要用于部署阶段,使用存储在 composer update 创建的 composer.lock 文件中的相同依赖项,在生产服务器或测试环境中安装我们的应用程序。