Lerna
A tool in the JavaScript/TypeScript ecosystem for managing monorepos, supporting multi-package version management, dependency linking and batch publishing, often used together with npm workspaces or yarn.
Timeline (last 90 days)
The advantages of a Monorepo include low cost of cross-package refactoring, transparent dependency relationships, and unified release cadence; the challenge is the need to use tools such as Changesets, Lerna, or Turborepo to manage version numbers and the release process.
A monorepo needs tools (such as Changesets, Lerna or pnpm workspace) to track package changes, increment version numbers and generate CHANGELOGs.
monorepo 的核心优势是跨包改动可以在同一个提交或 PR 中原子完成,避免多个仓库之间的版本漂移;代价是发布时需要 Changesets、Lerna、pnpm workspace 等工具为每个包独立计算版本号与 changelog。
Examples of the fixed version pattern (where all packages share the same version number) include early Babel or Lerna projects.
In a monorepo architecture, changes to underlying abstraction packages will automatically trigger version number increments in upper-level packages that depend on them via tools such as Changesets or Lerna, even if the upper-level packages themselves have no code changes.
In the JavaScript ecosystem, tools such as Lerna, Nx, and Turborepo provide build and release support for Monorepos, with Turborepo belonging to Vercel.
All Facts (6)
The advantages of a Monorepo include low cost of cross-package refactoring, transparent dependency relationships, and unified release cadence; the challenge is the need to use tools such as Changesets, Lerna, or Turborepo to manage version numbers and the release process.
50%UnverifiedA monorepo needs tools (such as Changesets, Lerna or pnpm workspace) to track package changes, increment version numbers and generate CHANGELOGs.
50%Unverifiedmonorepo 的核心优势是跨包改动可以在同一个提交或 PR 中原子完成,避免多个仓库之间的版本漂移;代价是发布时需要 Changesets、Lerna、pnpm workspace 等工具为每个包独立计算版本号与 changelog。
50%UnverifiedExamples of the fixed version pattern (where all packages share the same version number) include early Babel or Lerna projects.
50%UnverifiedIn a monorepo architecture, changes to underlying abstraction packages will automatically trigger version number increments in upper-level packages that depend on them via tools such as Changesets or Lerna, even if the upper-level packages themselves have no code changes.
50%UnverifiedIn the JavaScript ecosystem, tools such as Lerna, Nx, and Turborepo provide build and release support for Monorepos, with Turborepo belonging to Vercel.
50%