Rush 简化了 JavaScript 开发人员从一个公共 Git 仓库构建和发布多个包的流程。如果您希望将庞大的应用程序拆分成更小的部分,并且您已经意识到 为什么这不起作用 将每个包放在单独的仓库中... 那么 Rush 正适合您!
Rush 的优势
如今,许多不同的工具可以在 20 个不同的文件夹中运行“npm install”和“npm run build”。Rush 有什么特别之处呢?
面向大型仓库
Rush 由维护大型生产单仓库的专业工程师构建。我们的目标是为我们的同事提供最佳的开发人员体验,而不是将您转化为付费咨询或托管服务的客户。我们维护的仓库包含数百个应用程序,拥有多年的 Git 历史。为了管理这种规模,Rush 提供并行构建、子集构建、增量构建和分布式构建。
专为大型团队设计
Rush 提供了许多机制来帮助新成员加入并协调团队之间的协作。仓库策略允许在接受新包依赖项之前对其进行审核。Rush 可以强制在整个仓库中使用一致的依赖项版本。项目的不同子集可以使用锁步或独立的版本控制策略分别发布。
可靠的 NPM 安装
Rush 的安装模型利用了 PNPM 包管理器来消除 幽灵依赖项 和 NPM 替身 这些因素会给大规模安装带来困扰。您可以使用我们的 Lockfile Explorer 辅助工具来可视化和排查版本冲突。
易于管理
当您维护大型仓库时,您不希望开发人员打开在任何其他计算机上都无法重现的支持工单。Rush 有助于确保安装和构建完全确定性。即使 Rush 引擎版本也会根据您的 Git 分支自动安装。如果您定义了自定义命令或选项,它们将在 Rush 的命令行帮助中进行严格验证和记录。
交钥匙解决方案
厌倦了将开发人员体验拼凑在一起,却始终无法正确集成多个工具?Rush 是一个统一的协调器,可以安装、链接、构建、生成变更日志、发布和提升版本。这些功能旨在与更广泛的 Rush Stack 工具和实践套件集成。
开放模型
Rush 软件是免费开源的。欢迎社区贡献!我们对您的工具链持开放的态度:在 Rush 仓库中,每个项目文件夹都保持完全独立,可以单独安装,如果需要还可以轻松地重新定位。启用/禁用 Rush 以便针对一组给定项目相对来说不需要花费太多精力。