【问题标题】:symfony2 where to store reusable bundlesymfony2 在哪里存储可重用包
【发布时间】:2016-02-04 19:50:54
【问题描述】:

问题是在哪里存储可重复使用的捆绑包?

示例。 使用 My/ReportsBundle 的应用程序(AppA、AppB、AppC)很少。

所有这些应用都有composer.json

"require": "my/reports-bundle:1.0.x-dev"

现在。当任何开发人员需要对My/ReportsBundle 进行更改时,他会转到 vendor/my/reports-bundle/My/ReportsBundle 目录。 做出改变。 将它们提交给 git。

然后其他人可以使用composer update 获取更新。

但经常有人提到我们应该避免更改 vendor 的内容。

那么,我的问题是放置和开发可重用 symfony2 包的最佳实践是什么?

【问题讨论】:

  • 在这种情况下,在供应商下工作是可以的。大多数注意事项涉及修改其他人的代码。

标签: git symfony composer-php


【解决方案1】:

如果您有多个应用程序使用单个包,则必须将其视为开源包。开发是独立的和标记的。因为在你的 AppA 中修复包,可能会在不知道它的用途的情况下在 AppB 中破坏它。

所以我会维护独立的包,就像你想在 Github 上贡献一些包一样。

【讨论】:

  • 主要问题是我们如何将这样的包放在 src 目录中,以及如何轻松更新它?并且,谢谢你的回答。
  • 这取决于您的上下文。如果有 1 个应用程序使用该软件包,那就很简单了。由于有多个应用程序,这取决于它使用了多少程序员。如果只有您,您可以将单个存储库符号链接到所有应用程序。
  • 如您所描述的,您的用例的最佳工作流程,您已经做到了。所以我可能会坚持下去。我个人会维护带有测试的独立存储库,只是为了让每个人都知道并保持最新。它还将提供您可以在将来的包解耦中使用的经验。
猜你喜欢
  • 2011-02-06
  • 1970-01-01
  • 1970-01-01
  • 2013-11-02
  • 2016-08-09
  • 2010-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多