1

我有一个主存储库,它是我的系统模块的核心路由器。

所以每个模块也是一个独立的存储库。

如何使推送到主存储库将触发事件以将更新的代码推送到独立存储库?

就像https://github.com/Sylius/Sylius - 他们有主存储库(此链接),他们在其中收集拉取请求和独立存储库,例如存在于 src/ 中的https://github.com/Sylius/SyliusTaxonomyBundle Sylius/Bundle/TaxonomyBundle

他们不是手动将更新推送到独立存储库吗?还是某种 github 钩子?git子树?

为什么他们在 composer.json 中有“替换”部分?这是如何工作的?我没有从官方文档中得到任何想法:((

4

1 回答 1

2

Sylius(和 Symfony)为它们的组件和包创建单独的存储库,以便它们可以与 composer 独立使用。它们仅在单个存储库中工作,并用于subtree将组件和捆绑包拆分为只读存储库。

我不相信它们在技术上是只读的,这只是一个比每次都从 subrepo 中提取更改更简单的工作流程。

他们可能使用诸如Git Subsplit GitHub WebHook之类的东西来自动更新子存储库。


使用它们replace的键意味着 Sylius/Sylius 在其自身中包含 Sylius/SyliusCartBundle。因此,当使用使用 Sylius/Sylius 和 Sylius/SyliusCartBundle 的项目时,Composer 知道不要下载 Sylius/SyliusCartBundle,因为它已经由 Sylius/Sylius 提供。

于 2014-12-14T11:10:27.323 回答