【问题标题】:Laravel: Different composer.json files for dev and productionLaravel:用于开发和生产的不同 composer.json 文件
【发布时间】:2019-05-23 03:16:29
【问题描述】:

我需要为 devproduction 提供 2 个不同的 composer.json 文件,因为我正在(本地)开发供应商包,并希望在开发环境中保持我的供应商包的符号链接,因为它更容易维护。

composer.json 文件包含:

  • 对于开发,它具有按路径符号链接的存储库。
  • 对于生产,它在 github 上有私有存储库。

注意:供应商包位于require,而不是require-dev...所以composer update --no-dev 将不起作用。

我该如何设置?

通常,.env 文件是您设置不同环境变量的地方。有没有办法设置一个 COMPOSER_PATH 变量来指向 prod 或 dev 上的 2 个不同文件?

【问题讨论】:

  • 假设您的 composer.json 已签入,也许在 dev 中使用不同的分支?
  • 您最终可能会在开发环境中安装与生产环境不同的依赖项。您将失去composer.lock 的主要优势。
  • 好主意@adam,谢谢。 @rob006,我没有看到任何主要缺点:prod 将使用 composer.lock 和 dev composer-testing.lock。我还有什么遗漏吗?
  • 您可以继续使用同一个锁。锁定开发的唯一区别是开发中的第一方(您的)供应商包。锁定的重点是检查第三方供应商包。

标签: php laravel composer-php


【解决方案1】:

您可以使用environment variables 拥有多个作曲家文件,例如composer.jsoncomposer-testing.json,并在终端中使用:

COMPOSER=composer-testing.json php composer.phar install

【讨论】:

    猜你喜欢
    • 2016-04-20
    • 2015-10-13
    • 2017-07-27
    • 1970-01-01
    • 2017-08-20
    • 2015-11-17
    • 2023-03-24
    • 2015-07-04
    • 2010-10-07
    相关资源
    最近更新 更多