1

这个问题在其他地方得到了明确的回答,但它根本不适合我。我也可以看到很多人对此有问题。

我正在尝试bitmart在我自己的项目中使用 CCXT 的一个分支(分支名称是),因为它包含一些尚未与原始项目合并的重大更改ccxt/ccxt

git 版本:2.20.1
作曲家版本 1.7.2

我的项目中的作曲家文件如下所示:

"repositories": [{
    "type": "vcs",
    "url": "git@github.com:devsi/ccxt"
}],
 "require": {
    "ccxt/ccxt": "dev-bitmart as 1.18.409"
}

我已经尝试了 https url :https://github.com/devsi/ccxt它仍然无法正常工作。

我已经尝试删除版本约束,而是尝试读取 CCXT 中的每个版本。处理时间将需要数小时。它每秒大约执行 1 次。

Reading composer.json of ccxt/ccxt (1.17.378)
Reading composer.json of ccxt/ccxt (1.17.377)
Reading composer.json of ccxt/ccxt (1.17.376)

等等。

指定版本时,我收到的错误是:

Failed to clone the git@github.com:devsi/ccxt.git repository, 
try running in interactive mode so that you can enter your GitHub credentials


  [RuntimeException]                                                                                                               
  Failed to execute git clone --mirror 'git@github.com:devsi/ccxt.git' '/root/.composer/cache/vcs/git-github.com-devsi-ccxt.git/'   

我究竟做错了什么?

4

1 回答 1

2

因此,对于发现此问题的其他任何人。我的存储库分支是最新版本的原始源代码。但是,标签不是。由于 git fetch 不获取标签,因此在同步您的 fork 和源代码时,请确保您也git fetch upstream --tagsgit push --tags发布版本更新。如果没有这个,我会收到一个关于凭据和无法执行 git clone 的模糊警告。真正的错误是:

[InvalidArgumentException]                                                                                                                                            
  Could not find a version of package devsi/ccxt matching your minimum-stability (dev)

这也解释了为什么它要一个一个地阅读每个版本。它永远找不到它需要的版本,因为它在分叉的 repo 中不可用。

一旦标签是最新的。VCS 方法有效。

于 2019-06-24T20:07:15.313 回答