我在Symfony2中制作了项目,我使用composer来获取所有必需的包。
我到那里为例:
"symfony/symfony": "2.5.*",
"knplabs/knp-snappy-bundle": "dev-master",
"knplabs/knp-menu-bundle": "~1.1",
"sonata-project/core-bundle": "*",
它运作良好,但是如果捆绑包将被更新,那么它将会崩溃。
阻止composer只更新当前版本捆绑包的最佳方法是什么?我知道 - 我可以提供当前版本,但在哪里可以获得它们?
答案 0 :(得分:1)
最好是将版本修复为代码,以确保您使用相同的代码。例如:
"symfony/symfony": "2.5.5"
为所有捆绑包设置标记可能是一项艰巨的任务。 (至少第一次)。但对于生产中的应用程序,永远不要依赖开发或主分支。之后,例如,您可以在每次symfony发布后更新这些标记。
要查找可以使用packagist的标记,它将比Github快得多。例如knp-snappy-bundle
:
答案 1 :(得分:1)
我可以提供当前版本,但可以在哪里获取它们?
是的,你真的应该提供这些。 Composer包(通常)遵循所谓的semantic versioning。
那么它是在composer.json中指定版本的基础,在composer.org上有解释:
当你写下你的目标是稳定时,那些是有问题的:
与semver比较,您通常希望保持在MINOR或PATCH内。而且只有真正的版本。
使用composer show -i
命令显示已安装的软件包。然后检查packagist是否有可用版本,如果它仍然不清楚该输出。