Lerna 在发布新版本时是否会增加依赖版本?

Does Lerna bump dependency versions when releasing new versions?

如果我有一个带有 packageApackageB 的 monorepo,后者依赖于前者。如果我然后 运行 lerna version major,例如,导致 packageA 的版本号被颠簸,是否在 packageB 的 [=15] 中列出对它的依赖项=] 也会自动碰撞,还是应该手动完成?

(我尝试设置一个测试存储库来执行此操作,但后来 Lerna 抱怨它还没有遥控器,所以我希望有使用 Lerna 经验的人知道答案。)

为了这个答案,我假设您没有使用传统的提交。如果我猜错了,请随时回复更具体的内容。

TL;DR

是的,如果你 运行 lerna version major _你的仓库中的所有包都将更新到新的主要版本并且 packageBpackage.json 文件将更新为packageA.

的新版本号

详情

假设您的 monorepo 中有 packageApackageB 包,它们有 package.json 个如下所示的文件:

# packageA/package.json
{
  "name": "packageA",
  "version": "1.0.0,"
}
# packageB/package.json
{
  "name": "packageB",
  "version": "1.0.0",
  "dependencies": {
    "packageA": "^1.0.0"
  }
}

当你运行`lerna version major:

  • packageA/package.json 中的 version 字段将更新为 2.0.0
  • packageB/package.json 中的 version 字段将更新为 2.0.0
  • packageB/package.json 中的 dependencies.packageA 字段将更新为 ^2.0.0
# packageA/package.json
{
  "name": "packageA",
  "version": "2.0.0,"
}
# packageB/package.json
{
  "name": "packageB",
  "version": "2.0.0",
  "dependencies": {
    "packageA": "^2.0.0"
  }
}