php - "锁定"是什么意思运行“作曲家更新”时的意思“?
问题描述
我正在尝试执行composer update <package>
但收到以下错误:
<package>[<tag>] 可以满足请求的包 <package>(锁定在 <tag>,需要为 <version>),但这些与您的要求或最低稳定性相冲突。
同时,该标签<tag>
仅作为字符串存在于我的 composer.lock 文件中,我认为该文件仅由 修改composer update
,而不是回读。
我试过 running composer why-not <package>
,但它的输出并没有真正解释这个问题:
<program> <other-version> 需要 <package> (<version>)
在这种情况下,“锁定”是什么意思?我该如何解决这个问题?
解决方案
包被锁定意味着与版本约束一起使用的分支上的最后一次提交的提交哈希在最后dev-<branch>
一次运行期间保存在composer update
锁定文件中,以确保部署时的确定性(可重现)构建。
如果composer.lock
您:
- 跑
composer update [<package>]
... 或者 ...
composer install
在作曲家的当前目录中使用composer.json
礼物而不是锁定文件运行,它会自动生成锁定文件
推荐阅读
- python - AttributeError:“列表”对象没有属性“to_csv”
- trace - Qemu:跟踪 msr 读/写
- c# - .NET Core 3 - 我的区域标签未被识别
- wordpress - 为什么我的 SSL 在移动设备上无法为 WWW 工作?
- android - 更改共享元素活动过渡“闪烁”的颜色
- vb.net - 在 My.settings 中保存带有附加信息的 ListBox
- powershell - PowerShell (?) 检查 office 365 邮箱并通过重置 API 将电子邮件转发到另一个系统
- ansible - Ansible:在本地复制文件时未定义的变量
- android - 从命令行使用 arcoreimg
- c - 接收每个多播数据包两次 Onload?