如何轻松调试跨项目共享的 symfony 包

how to easily debug a symfony bundle shared across project

我即将在两个 symfony 项目之间共享一个小包,我想知道如何做才能在编码时轻松调试它。

这个包将被添加到 composer.json 依赖列表,每次这个包改变时,两个 symfony 项目都必须做一个 composer 更新。 我希望能够在没有这个可怕的步骤的情况下测试这个包。那么我怎样才能避免自己承受这样的负担呢?

我想我可以使用第三个项目专门用于调试这个包并简化对更新的访问,但是如何?

  1. 我可以使用 git 子模块将我的包托管在另一个 symfony 项目中,该项目可以作为一个始终保持最新的环境,但我对 git 的体验非常糟糕子模块并且更愿意避免它。

  2. 另一种解决方案可能是用符号链接替换子模块,但这不是跨团队的共享环境(每个团队成员都可以创建符号链接)

  3. 我的首选解决方案是一个简单的 bash 脚本可以 "commit + launch the composer update to the test project" 减轻痛苦。 最后,虽然这两个真实项目应该依赖私有 github 仓库来获取代码,但测试项目应该依赖 path 仓库来绕过我糟糕的互联网连接。

edit :我最终使用了一个 git 挂钩(post-commit)触发了我的两个依赖项目的作曲家更新。我的依赖项目具有使用私有 git 存储库声明的依赖项。这创建起来很简单,但缺点是每次提交后都会触发作曲家更新。

我的解决方案并不完全令人满意,但我想不出更好的解决方案,我是不是漏掉了什么better/simpler?

作为@numediaweb 的好心回答,这个工作流程似乎是要走的路: Symfony2 - creating own vendor bundle - project and git strategy