编写器需要分支名称



例如,我想要求:

{
  "repositories": [
    {
      "type": "git",
      "url": "https://github.com/google/google-api-php-client.git"
    }
  ],
  "require": {
    "google/apiclient": "v1-master"
  }
}

在本例中,我尝试在分支v1-master上要求google/apiclient。我得到错误:

  [UnexpectedValueException]                                                        
  Could not parse version constraint v1-master: Invalid version string "v1-master"

您需要用dev-作为所有dev分支(=未标记)的前缀。

要安装您需要的分支,请使用:

composer require google/apiclient:dev-v1-master

请参阅composer文档。

这将起作用:

{
  "repositories": [
    {
      "type": "git",
      "url": "https://github.com/google/google-api-php-client.git"
    }
  ],
  "require": {
    "google/apiclient": "dev-BRANCH_NAME"
  }
}

所以模式是"dev-*",如果分支名称是"bug fix",那么"dev-bug fix"

带有命令行:

composer require google/apiclient:dev-BRANCH_NAME

我试图为不同的谷歌存储库做同样的事情,该存储库包含几个包,我花了一些时间才弄清楚。因此,我在下面分享我的解决方案。

我的目标是从https://github.com/googleapis/google-cloud-php.git在master分支中。

以下步骤对我有效:

  1. 克隆存储库
git clone https://github.com/googleapis/google-cloud-php.git google-cloud-php
  1. 设置composer.json以使用本地文件夹中的正确包:
{
    "repositories": [
        {
            "type": "path",
            "url": "/Users/USERNAME/projects/google-cloud-php/Compute"
        }
    ],
    "require": {
        "google/cloud-compute": "dev-master"
    }
}

请注意,在步骤2中,url指向存在实际google/cloud计算包的Compute子文件夹。

我的解决方案可以很容易地针对任何分支进行调整,您只需要在步骤1中gitcheckout适当的分支,然后在步骤2中将"dev-master"更改为"dev-YOUR_branch"。

相关内容

  • 没有找到相关文章

最新更新