gpt4 book ai didi

php - 为什么 Composer 删除了我对部署的依赖?

转载 作者:可可西里 更新时间:2023-11-01 12:36:56 26 4
gpt4 key购买 nike

我在使用 Composer 时遇到问题。我在本地环境中使用 git。我是唯一的开发者。

当我需要更多依赖项(或需要更改某些版本)时,我编辑 composer.json 并在本地运行 composer install

一切都很好。

然后,当一切在本地运行时,我提交更改(包括 composer.jsoncomposer.lock)并推送到我的生产服务器。

post-receive 脚本更新源代码并在远程服务器上运行 composer 安装

预期是什么:

  • Composer 应根据 composer.lock 文件安装新的依赖项。
  • 我应该很高兴。

发生了什么:

  • Composer 生气了:

Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them.

  • Composer 删除所有依赖项
  • 我的生产中断
  • 我有心脏病
  • 我必须通过 ssh 登录到我的服务器并运行 composer update 才能正常工作,但我知道不建议使用 composer update生产服务器。

这是post-receive作曲部分的输出:

composer install
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them.
- Removing guzzle/guzzle (v3.9.3)
- Removing symfony/event-dispatcher (v2.7.1)
- Removing geoip/geoip (v1.15)
- Removing pimple/pimple (v3.0.0)
- Removing cocur/slugify (1.1.x-dev)
- Removing bentools/url (0.2)
- Removing bentools/simplexmlextended (1.2.0)
Generating autoload files

我做错了什么?

谢谢,本

最佳答案

这个警告

Warning: The lock file is not up to date with the latest changes in composer.json, you may be getting outdated dependencies, run update to update them.

当您的 composer.jsonmd5sum 与存储在 composer.lock 中的不同时发生:

{
"hash": "b15ed9405e8547867f74973ce8add172",
"packages": [ ... ]
}

确保您的 composer.jsoncomposer.lock 与本地的相同(比较它们的 md5sums)。我怀疑您的部署链中的某些内容没有正确更新它们。

确保您使用 require 命令在本地添加依赖项:

composer require new/package ~2.5

或者如果 composer.json 是手动编辑的至少运行

composer update new/package

之后,对于每个额外添加的包,以确保它被正确添加到您的 composer.lock

另一种方法:
在生产环境中运行 composer update --lock。这将更新您的锁定文件中的哈希值,但不会升级您的供应商。

然后运行 ​​composer install 从您的 comoser.lock 安装供应商。

关于php - 为什么 Composer 删除了我对部署的依赖?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31159555/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com