如何使用作曲家安装特定版本的软件包



我正在尝试使用Composer安装软件包的特定版本。我尝试了composer installcomposer require,但他们正在安装最新版本的软件包。如果我想要一个较旧版本怎么办?

composer require vendor/package:version

例如:

composer require refinery29/test-util:0.10.2

添加双引号以在版本号中使用"^" caret operator

composer require middlewares/whoops "^0.4"

如@alucic所述,使用:

composer require vendor/package:version

或您可以使用:

composer update vendor/package:version

您可能应该查看有关Composer Install和Composer Update之间差异的堆叠帖子。

与有关版本号的问题有关,您可以在版本上查看作曲家文档,但简而言之:

  • tilde版本范围() - 〜1.2.3等于> = 1.2.3< 1.3.0
  • Caret版本范围( ^) - ^1.2.3等于> = 1.2.3< 2.0.0.0

因此,使用 tilde 您将获得补丁的自动更新,但次要版本和主要版本将不会更新。但是,如果您使用 caret 您将获得补丁程序和次要版本,但是您将不会获得重大的(打破更改)版本。

tilde版本被认为是一种"更安全的"方法,但是如果您使用可靠的依赖项(维护良好的库),则不应在CARET版本上遇到任何问题(因为较小的更改不应该破坏更改。

<</p>

只需使用php composer.phar要求

例如:

php composer.phar require doctrine/mongodb-odm-bundle 3.0

也可以使用安装。

https://getcomposer.org/doc/03-cli.md#requirehttps://getcomposer.org/doc/03-cli.md#install

假设您要安装Laravel Collective。目前是6.x版本,但您需要5.8版。您可以运行以下命令:

composer require "laravelcollective/html":"^5.8.0"

文档中显示了一个很好的例子:https://laravelcollactive.com/docs/5.5/html

在您的composer.json中,您可以放置:

{
    "require": {
        "vendor/package": "version"
    }
}

然后从包含composer.json的目录运行composer installcomposer update。有时,对我来说,作曲家是Hinky的,所以我将从composer install开始之前从CC_11开始,以确保它得到新鲜的东西。


当然,正如其他答案指出的那样,您可以从终端运行以下内容:

composer require vendor/package:version

和版本化:
- 作曲家的官方版本
- Ecosia搜索

我试图从另一个存储库中,而不是最新版本,我遇到了同样的问题,上述问题对我有用:(

>

过了一会儿,我在文档中看到了,在Dev Branch的情况下,您需要使用版本的" dev-'"前缀,以下效果很好。

composer require [vendorName]/[packageName]:dev-[gitBranchName]

相关内容

  • 没有找到相关文章

最新更新