25

我知道这composer.lock是为了确定已安装依赖项的确切版本。但是vendor/composer/installed.json文件的作用是什么?

两者都包含 JSON,并且都是自动生成的。

4

2 回答 2

29

composer.lock首次安装或更新时生成。它包含对所使用的确切版本的引用。它应该提交到版本跟踪存储库中,以允许恢复库的这种精确组合。

installed.json是 Composer 的内部文件。当您手动删除包composer.json以从供应商目录中删除文件时使用它。否则,旧的供应商软件包将永远存在。

于 2013-10-17T19:07:44.427 回答
0

installed.jsonComposer 似乎将其用作内部存储库,以跟踪供应商目录中实际安装的内容。

我读过那composer.lock应该安装的并且installed.json是安装。这在上下文中具有一定的意义,即拥有没有供应商目录的 composer.lock 文件是有效的。您运行composer install,它将安装列出的包 intcomposer.lock并将它们写入installed.json.

Composers 代码库将installed.json其视为本地存储库。内容被加载到InstalledRepositoryInterface名为的类型变量中localRepository

于 2021-02-08T23:07:29.843 回答