Javascript 什么是盖茨比;发布策略

Javascript 什么是盖茨比;发布策略,javascript,npm,gatsby,Javascript,Npm,Gatsby,有人能谈谈或把我和包发布策略背后的理由联系起来吗?我想知道为什么有这么多“仅限版本升级”的版本,这使得变更日志过于冗长,并且=>很难及时升级包。这也使得版本扩散变得更加困难 e、 g.以下内容: 《盖茨比》是使用lerna作为monorepo发行的。其他几个大型开源项目也是这样分布的,包括babel、react等 这意味着我们的CHANGELOG.md文件在packages目录中与包本身一起分发 帮助“将大型代码库拆分为独立版本的包”。因为盖茨比是一个开源项目,有许多不同的插件、主题、核心等等。

有人能谈谈或把我和包发布策略背后的理由联系起来吗?我想知道为什么有这么多“仅限版本升级”的版本,这使得变更日志过于冗长,并且=>很难及时升级包。这也使得版本扩散变得更加困难

e、 g.

以下内容:

《盖茨比》是使用lerna作为monorepo发行的。其他几个大型开源项目也是这样分布的,包括babel、react等

这意味着我们的CHANGELOG.md文件在packages目录中与包本身一起分发

帮助“将大型代码库拆分为独立版本的包”。因为盖茨比是一个开源项目,有许多不同的插件、主题、核心等等。这种理念导致了许多包的增量更新。因此,使用开源社区进行快速迭代是可能的:

将大型代码库拆分为独立版本的包对于代码共享非常有用。然而,跨多个存储库进行更改既麻烦又难以跟踪,跨存储库的测试变得非常复杂

为了解决这些(和许多其他)问题,一些项目将把它们的代码库组织成多包存储库(有时称为monorepos)。像Babel、React、Angular、Ember、Meteor、Jest等项目在单个存储库中开发所有包

Lerna是一个工具,它优化了使用git和npm管理多包存储库的工作流程

Lerna还可以减少开发和构建环境中大量软件包副本的时间和空间需求,这通常是将项目划分为多个单独的NPM软件包的缺点。有关详细信息,请参阅起重机文档


看起来“仅版本凹凸”版本实际上改变了依赖项的版本,使该包的行为有点像元包。因此,您确实可以通过这些版本有效地获得代码更改,代码更改恰好“隐藏”在依赖项中。我以前与Lerna合作过,但我不记得必须为monorepo中的每个包削减版本。也许我的记忆有点歪,但我认为如果并且仅当包中的代码发生了更改,您就可以为包剪切一个版本。约阿希姆上面的评论更有意义,更像是一个答案,我已经阅读了这个文档。我想知道所有“仅限版本升级”的版本来自哪里。@JaKXz:听起来像是盖茨比使用的,你已经习惯了固定模式。