beachball 是一个由 Microsoft 维护的 npm 包,它可以帮助团队管理大型 mono-repo 的版本号,以及帮助识别和发布版本差异。如果您正在管理一个大型项目,并且团队成员分布在不同的文件夹中,则 beachball 将非常有用。本文将介绍如何使用 beachball 进行版本管理流程。
安装
在使用 beachball 之前,您需要在项目中安装它。执行以下命令将 beachball 安装到您的项目中:
npm install -g beachball
版本控制
在使用 beachball 之前,需要配置版本号。您可以在项目的根目录中创建一个名为 package.json
的文件,并在其中添加以下字段:
-- -------------------- ---- ------- - ------------- - ------------ -- ---------- - ---------- ---------- --------- ---------- ---------- -------- -- ------------ - ---------- -------- ----------- ---- - -
接下来运行
npm run version
或者只执行:
beachball version
此命令将自动更新 package.json 文件中的版本,并将所有受影响的包提交到 Git。
git commit -am "Version bump to 1.0.1" git push
版本发布
要发布模块,请运行以下命令:
npm run publish
或者只执行:
beachball publish
此命令将发布 npm 包,并创建一个 Git 标记,标记中将包括所有已发布的依赖项。这使得它很容易跟踪应用程序内部版本的变化。
指定需要发布的包
您可以使用命令行中的 -p
指定要发布的包。如:
beachball publish -p my-awesome-package
管理版本
在运行 beachball version
时,会生成以下输出(如果您的项目包含许多包,则输出会相应地更长):
Syncing versions ---------------- packages/package-one Change: none, Version: 1.0.0, Private: false packages/package-two Was: 1.0.0, Next: 2.0.0-alpha.0 packages/package-three Change: none, Version: 1.0.0, Private: false
beachball 将会显示每个模块的变化。在上面的示例中,模块 package-two 由 1.0.0 的版本跃升到了 2.0.0-alpha.0 的预发布版。如果您有问题,可以在 GitHub 上对问题进行描述,并为输出提供完整的日志。
总结
通过阅读本文,您已经学会了如何在大型 mono-repo 中使用 beachball 进行版本管理,您可以轻松地更新版本号,并将所有变更提交给 Git。beachball 可以让您在不中断您的大型项目的情况下移动更快,并确定什么时候和为什么代码变更。同时,beachball 还可以帮助您了解每个版本的变化,以及帮助您轻松发布代码。希望这篇文章对您有所帮助!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f1d4bef403f2923b035c576