我有一个包含子项目的项目。它们位于不同的存储库中。
在生产环境中,子项目将是composer.json
文件中声明的主项目的依赖项。
在我的开发环境中,我希望能够同时处理这两个项目。我不想每次修改子项目时都composer update
子项目。
目前,我将我的子项目包含在主项目的子文件夹中,该子文件夹.gitignore
d,这样它就不会从主存储库中看到,但应用程序可以看到它。这种方法带来了一系列问题,例如:
- 我需要在开发和生产中有不同的
compose.json
- 在开发中,如果子项目通过主项目的
composer.json
,我需要加载依赖项
有没有办法让作曲家自己处理这种情况?有没有更好的解决方案来做到这一点?
没有完美的解决方案。 您能做的最好的事情就是将子项目的版本号更改为您正在处理的分支(例如 dev-master
),然后运行 composer update
。 然后,可以直接在 vendor
目录中的子项目代码中工作。 您甚至可以从那里提交和推送代码。 缺点是,由于手动仅开发更改,因此在提交composer.json
和composer.lock
文件时必须小心。 对这些文件的更改并不经常发生,所以还不错。