npx skills add https://github.com/mindrally/skills --skill lerna您是 Lerna 方面的专家,Lerna 是一个用于管理和发布多个 JavaScript/TypeScript 包的快速、现代化的构建系统。
packages/ - 所有包的目录(默认)lerna.json 中使用多个目录进行自定义package.json在根目录配置 lerna.json:
{
"$schema": "https://json.schemastore.org/lerna.json",
"version": "independent",
"npmClient": "npm",
"packages": ["packages/*"],
"useWorkspaces": true
}
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
"version": "independent" - 每个包独立版本控制"version": "1.0.0" - 固定/锁定模式,所有包版本相同useWorkspaces: true 启用工作区集成在根目录的 package.json 中配置 npm/yarn/pnpm 工作区:
{
"workspaces": ["packages/*"],
"private": true
}
lerna run build - 在所有包中运行构建lerna run test --scope=@org/package - 在特定包中运行lerna run lint --since main - 仅在已更改的包中运行--stream 获取实时输出--parallel 进行并发执行lerna version 更新版本:
lerna version patch - 升级补丁版本lerna version minor - 升级次要版本lerna version major - 升级主要版本lerna version - 交互式版本选择lerna publish 发布:
lerna publish - 发布自上次发布以来已更改的包lerna publish from-git - 发布在 git 中已标记的包lerna publish from-package - 发布具有未发布版本的包.npmrc 或 lerna.json 中配置 npm 注册表--dist-tag--since 标志:
lerna run test --since mainlerna changed - 列出自上次标记以来已更改的包lerna diff - 显示自上次发布以来的差异启用约定式提交以实现自动化版本控制:
{
"command": {
"version": {
"conventionalCommits": true,
"message": "chore(release): publish"
}
}
}
fix: - 补丁版本feat: - 次要版本BREAKING CHANGE: - 主要版本使用内部包引用:
{
"dependencies": {
"@org/shared-utils": "^1.0.0"
}
}
Lerna 在版本控制期间保持内部依赖同步
使用工作区将公共依赖提升到根目录
lerna run 配合 --since 以提高 CI 效率--yes 标志进行非交互式发布@org/package-name每周安装量
80
代码仓库
GitHub 星标数
42
首次出现
2026 年 1 月 25 日
安全审计
已安装于
gemini-cli66
opencode65
claude-code62
cursor62
codex61
github-copilot58
You are an expert in Lerna, the fast, modern build system for managing and publishing multiple JavaScript/TypeScript packages.
packages/ - All package directories (default)lerna.jsonpackage.jsonConfigure lerna.json at the root:
{
"$schema": "https://json.schemastore.org/lerna.json",
"version": "independent",
"npmClient": "npm",
"packages": ["packages/*"],
"useWorkspaces": true
}
"version": "independent" - Each package versioned separately"version": "1.0.0" - Fixed/locked mode, all packages same versionuseWorkspaces: trueConfigure npm/yarn/pnpm workspaces in root package.json:
{
"workspaces": ["packages/*"],
"private": true
}
lerna run build - Run build in all packageslerna run test --scope=@org/package - Run in specific packagelerna run lint --since main - Run only in changed packages--stream for real-time output--parallel for concurrent executionlerna version:
lerna version patch - Bump patch versionlerna version minor - Bump minor versionlerna version major - Bump major versionlerna version - Interactive version selectionlerna publish:
lerna publish - Publish packages changed since last releaselerna publish from-git - Publish packages tagged in gitlerna publish from-package - Publish packages with unpublished versions.npmrc or lerna.json--dist-tag for pre-release versions--since flag for changed packages:
lerna run test --since mainlerna changed - List packages changed since last taglerna diff - Show diff since last releaseEnable conventional commits for automated versioning:
{
"command": {
"version": {
"conventionalCommits": true,
"message": "chore(release): publish"
}
}
}
fix: - Patch versionfeat: - Minor versionBREAKING CHANGE: - Major versionUse internal package references:
{
"dependencies": { "@org/shared-utils": "^1.0.0" } }
Lerna keeps internal dependencies in sync during versioning
Hoist common dependencies to root with workspaces
lerna run with --since for efficient CI--yes flag for non-interactive publishing@org/package-nameWeekly Installs
80
Repository
GitHub Stars
42
First Seen
Jan 25, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
gemini-cli66
opencode65
claude-code62
cursor62
codex61
github-copilot58
Node.js 环境配置指南:多环境管理、类型安全与最佳实践
10,500 周安装