为什么推荐的带有Composer的Drupal安装方法将dev用于稳定性标志?

时间:2019-01-19 12:22:11

标签: composer-php drupal-8

我正在学习PHP Composer,并且已经通过几种方案安装了Drupal 8。我发现这样做的最权威方法是在this article中的drupal.org中。

建议使用以下命令进行初始安装:

composer create-project drupal-composer/drupal-project:8.x-dev my_site_name_dir --stability dev --no-interaction

我阅读了稳定性标志,想知道我是否理解不正确。我发现的最具有自主性的文档位于this article中。如果我正确地阅读和理解了内容,则开发稳定性意味着我愿意接受安装软件包作为安装的一部分。

我正确理解该标志吗?这里是否假设我仅在运行开发环境,但是对于生产环境,我将使用不同的参数?据我所知,我不应该在生产服务器上使用任何开发包……它们甚至都没有安全公告。

如果有人可以向我介绍实现稳定性的正确逻辑是什么,我将非常乐意。而且,如果不能清楚地知道为什么dev是默认的建议稳定性,那么为什么会建议使用dev。

1 个答案:

答案 0 :(得分:1)

--stability dev开关在这种情况下没有任何作用,因此我想这是过去的一些遗留现象(或者是由于缺乏对stability标志在作曲家中的工作方式的了解)。在该项目的composer.json中,已经定义了以下设置:

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

命令显式使用dev分支(8.x-dev),因此--stability dev并没有做任何事情。并感谢prefer-stable的设置,它的工作效果没有您想象的那么糟糕-Composer只会为没有稳定版本的依赖项(在这种情况下,似乎只有dev依赖项)安装dev版本。 >

但是无论如何您都不应该将此命令用于生产安装,因为它会安装所有dev依赖项。您可能应该使用这样的内容:

composer create-project drupal-composer/drupal-project:8.x-dev my_site_name_dir --no-dev --no-interaction

或在项目初始化后调用composer install --no-dev