Composer:如何在Symfony 2.3中安装`dev`软件包?

时间:2013-08-13 16:38:51

标签: composer-php symfony-2.3

尝试在Symfony 2.3项目中安装KnpGaufretteBundle,我没有运气。问题是:

  1. minimum-stability:stablecomposer.json);
  2. 我需要的捆绑包仍为dev-master版本。
  3. 在Symfony文档中阅读this令人沮丧:

      

    如果您知道仍然需要开发人员的酷包或PHP库   最低稳定性,与主要开发人员交谈并说服他标记   一个稳定的发布。

    我没有将整个项目的最低稳定性更改为dev,因为它肯定会造成巨大的混乱 - 我的意思是,我不能并排使用稳定的包和开发包吗?

    我可能错过了一些关于作曲家的事情吗?


    编辑(2013年8月14日)

    根据Sven下面的回答,我编辑了我的composer.json(你可以找到它here),它开始起作用了。无论如何,这是一个部分解决方案,因为内联别名不适用于依赖项 - 所以在我的情况下,我必须首先指定“不太稳定”的包的所有依赖项,并逐个别名。

2 个答案:

答案 0 :(得分:31)

只需使用

"knplabs/knp-gaufrette-bundle": "dev-master@dev" 

如果您需要最新的开发版

您还可以将最小稳定性更改为dev并添加“prefer-stable”:如下所示:

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

然后作曲家将总是试图找到一个稳定的版本,如果没有找到安装开发,那么你的symfony包将仍然稳定。 但是在你的情况下,作曲家会安装v0.1.4(最新稳定的knplabs / knp-gaufrette-bundle),所以无论如何你都需要dev-master @ dev。 prefer-stable只是一个提示。

答案 1 :(得分:1)

查看别名:http://getcomposer.org/doc/articles/aliases.md

它们应该允许您以一种分支应该是版本标记的逻辑扩展的方式来解决分支(根据定义,它始终处于开发中,因为您只能访问最新的提交)。

对于尚未标记的项目,正确的假定标记版本将类似于“0.0.0”。

您应该尝试捆绑的内联别名。