GitHub composer 包 - 最低稳定性

Nic*_*nsk 5 git github composer-php

我的包在 Giblab 的私有存储库中工作,在 Github 中导入后它不起作用,当我尝试要求它时,出现错误:

[InvalidArgumentException] 找不到包 lib_externe/XXX 的匹配版本。检查包的拼写、您的版本限制,以及该包的稳定性是否与您的最低稳定性 (dev) 相匹配。

这是我的包 composer.json :

{
  "name": "lib-externe/XXX",
  "description": "Lib metier V4",
  "license": "proprietary",
  "minimum-stability": "dev",
  "require": {
    "php": ">=5.4.0"
  }
}
Run Code Online (Sandbox Code Playgroud)

前面的 Composer.json 是:

{
  "repositories": {
    "lib_externe": {
      "type": "git",
      "url": "https://xxx:yyy@github.com/zzz/zzz.lib_externe.git"
    }
  },
  "minimum-stability": "dev",
  "prefer-stable": true,
  "require": {
    "lib-externe/XXX": "dev-master",
  }
}
Run Code Online (Sandbox Code Playgroud)

我尝试添加我以前没有的那两行,但这没有帮助:

  "minimum-stability": "dev",
  "prefer-stable": true,
Run Code Online (Sandbox Code Playgroud)

另一个有趣的事情是,如果我删除了供应商目录和 composer.lock,并且如果我进行了 composer 安装,它就会工作,并且我会在供应商中看到我的 lib-externe 文件夹。但是在不可能要求之后(此命令在 gitlab 中工作):

composer require lib_externe/XXX:dev-master
Run Code Online (Sandbox Code Playgroud)

当我执行此命令行时,出现“最小稳定性”错误。例如,我用@dev 尝试了很多不同的变体,但没有任何帮助

详细模式:

...
Reading composer.json of lib-externe/XXX (wip/HJ_ms_url_landing_maker)
Reading /root/.composer/cache/repo/XXXXXXXXXXXXXXXX from cache
Importing branch wip/HJ_ms_url_landing_maker (dev-wip/HJ_ms_url_landing_maker)
Downloading https://repo.packagist.org/packages.json
Writing /root/.composer/cache/repo/https---repo.packagist.org/packages.json into cache
Reading /root/.composer/cache/repo/https---repo.packagist.org/p-provider-2013.json from cache
Reading /root/.composer/cache/repo/https---repo.packagist.org/p-provider-2014.json from cache
Reading /root/.composer/cache/repo/https---repo.packagist.org/p-provider-2015.json from cache
Reading /root/.composer/cache/repo/https---repo.packagist.org/p-provider-2016.json from cache
Reading /root/.composer/cache/repo/https---repo.packagist.org/p-provider-2017.json from cache
Reading /root/.composer/cache/repo/https---repo.packagist.org/p-provider-2018.json from cache
Reading /root/.composer/cache/repo/https---repo.packagist.org/p-provider-2018-04.json from cache
Reading /root/.composer/cache/repo/https---repo.packagist.org/p-provider-2018-07.json from cache
Downloading http://repo.packagist.org/p/provider-2018-10%24ea06f25637c1c602d41ed345c80a660576d10be05261f8108e936462757cdd1f.json
Writing /root/.composer/cache/repo/https---repo.packagist.org/p-provider-2018-10.json into cache
Downloading http://repo.packagist.org/p/provider-2019-01%2489609fdd5aed8f456ecfe99afda1ac8b789147473448122af24d6c5104615a76.json
Writing /root/.composer/cache/repo/https---repo.packagist.org/p-provider-2019-01.json into cache
Reading /root/.composer/cache/repo/https---repo.packagist.org/p-provider-archived.json from cache
Downloading http://repo.packagist.org/p/provider-latest%249fafea8edeb232d8a026fe8fd8d1cbacbc6be44e759a39ed975e02facb658be1.json
Writing /root/.composer/cache/repo/https---repo.packagist.org/p-provider-latest.json into cache
Downloading https://packagist.org/search.json?q=lib_externe/XXX&type=


  [InvalidArgumentException]
  Could not find a matching version of package lib_externe/XXX. Check the package spelling, your version constraint and that the package is available in a stability which matches your minimum-stability (
  dev).


Exception trace:
 () at phar:///usr/local/bin/composer/src/Composer/Command/InitCommand.php:740
...
Run Code Online (Sandbox Code Playgroud)

我尝试“composer clear-cache”如果我在composer.json的“url”存储库中克隆URL,它会正确克隆,并且在详细模式下我会看到我的所有分支(包括master)如果我检查缓存文件,我看到包 composer.json :

{"name":"lib-externe\/XXX","description":"Lib metier V4","license":"proprietary","minimum-stability":"dev","require":{"php":">=5.4.0"},"time":"2018-04-16T10:40:23+00:00"}
Run Code Online (Sandbox Code Playgroud)

我没有标签,如果可能的话,我想暂时不要使用它们!

直到现在在 Gitlab 中它都是这样工作的,

谢谢 !

Nic*_*nsk 5

问题只是包名错误('_' 而不是 '-'):

composer require lib_externe/XXX:dev-master
Run Code Online (Sandbox Code Playgroud)

正确名称是:

composer require lib-externe/XXX:dev-master
Run Code Online (Sandbox Code Playgroud)

  • 将“composer.json”中的版本更改为“dev-main”对我很有帮助。 (2认同)