满足循环依赖

Satis circular dependencies

我有一个包含多个包的项目 每个包都在私有 git 存储库中。

一些软件包相互依赖。

您可以在这里查看我满意的 http://codepen.io/anon/pen/wBOEQW 页面的样子。

现在,如果我克隆 project-xpto/core 和 运行 作曲家更新,我会得到:

➜ php-core git:(master) composer update Loading composer repositories with package information Updating dependencies (including require-dev) Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for project-xpto/event dev-master -> satisfiable by project-xpto/event[dev-master].
    - project-xpto/event dev-master requires project-xpto/activity-streams dev-master -> no matching package found.
  Problem 2
    - Installation request for project-xpto/tool dev-master -> satisfiable by project-xpto/tool[dev-master].
    - project-xpto/tool dev-master requires project-xpto/activity-streams dev-master -> no matching package found.

Potential causes:
 - A typo in the package name
 - The package is not available in a stable-enough version according to your minimum-stability setting
   see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion>

for more details.

Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.

难道不应该满足解决所有依赖关系并且一切正常吗?

我做错了什么?

如果您还需要什么,尽管问我,我会在这里更新。

请试一试:

"minimum-stability": "dev"添加到project-xpto/corecomposer.json

您需要很多 dev-master 个稳定性包,但默认的最小稳定性是 stable。所以他们没有解决到一个稳定的集合。您需要通过在主项目 composer.json.

中设置上述指令,将所有包的稳定性降低到 dev

或者您可以使用 dev-master@dev 来降低特定软件包的稳定性。但是这里有很多包,所以我建议为整个项目设置minimum-stability dev。


您可以将 "minimum-stability dev" 与 "prefer-stable true" 结合使用。 这告诉 Composer 解析为稳定版本,并且只有在无法解析稳定版本时,才使用开发依赖项。此设置是私人项目开始阶段的好方法,其中包开始从 "dev-master" 增长到 "stable versions".

"minimum-stability": "dev",
"prefer-stable" : true