ob娱乐下载Symfony包时不再标记版本之间的更改
因为Symfob娱乐下载ony版本2,项目的代码已经被作为一个Git mono-repository管理。所有的代码在一个地方很方便:从变化集中问题,它使每个人的生活更容易。
因为Symfob娱乐下载ony 4, mono-repository不再仅仅是用于开发和使用作为一个作曲家项目依赖项(ob娱乐下载symfony / symfony
)。相反,项目现在取决于个人包(ob娱乐下载symfony /控制台
,ob娱乐下载symfony / http-kernel
,……)。这是一个很好的优化,因为它节省了一些重要的带宽不下载代码你永远不会使用。它还允许Symfony 4自动ob娱乐下载启用或禁用功能基于你的依赖。
mono-repository仍然是真理的单一来源虽然作为个人包自动更新由于技术称为Git子树分裂。
当我们创建一个新的版本,我们标记mono-repository然后,标签自动创建为每个单独的包。但随着Symfony组件数量的增长,这也意ob娱乐下载味着我们创造更多的“空”的标签。即使一个包没有改变自上次补丁版本,我们还是创建一个新的标签。它有一个很大的优势:你可以很容易的作曲家显示
如果所有输出Symfony包ob娱乐下载是最新的。
创建标签没有变化发生时也浪费资源:独联体更新的依赖,开发人员下载新版本,即使他们不需要花时间等待下载,……我们浪费了人力资源,而且基础设施资源。
讨论优化基础设施资源,我们努力优化CI管道尽可能避免冗余的活动。今天,我们要更进一步。
开始下一个版本中,我们不会为包创建标签了,当他们没有改变自上次补丁发布在我们考虑的好处更重要比没有所有Symfony包的不便使用相同的补丁版本。ob娱乐下载它也有一个副作用:有时候,我们标记释放一个组件的主要回归。即使我们立刻解决它,我们总是不愿马上标记新版本避免创建许多新的空标签。没有更多的。这种回归发生时,我们将能够快速地创建一个新版本。
除了主要的Symfony库,我们将ob娱乐下载做同样的Symfony合同,Symfony Polyfills和树枝。
这是一小步,但一个好的保护我们的地球。
评论
如果我们用“extra.symfony作曲家。ob娱乐下载需要”属性,以确保symfony组件总是含有给定版本,甚ob娱乐下载至那些装载了依赖?
我目前的理解是,https://github.com/splitsh/lite或一个增强Symfony-internal版本被用于分裂Symfony monorob娱乐下载epo。我们也使用splitsh / lite分裂monorepo不必要的标签,我们有相同的问题。
核心代码splitsh / lite几乎是一样的,但我上一层来管理标签/ packagist /…
评论都关门了。
以确保评论保持相关,他们关闭了旧的帖子。
这看起来太棒了!你愿意分享你是如何实现的呢?
我理解正确的话,你还是标签monorepo和分裂后?
Fabien Potencier is a certified Symfony engineer.
Get certified! Online exams available in all countries.
Register Now