rush learn note

它是啥??

帮助管理大仓库, 可以理解为 monorepo,配合包管理器使用。
Q: 它怎么个帮助法 ?
A: 先了解一下它有啥用处

功能

常用命令 more

rush install 安装依赖
rush add 安全某一个依赖包
rush update 根据更改的 package.json 升级依赖
rush build 增加构建
rush rebuild 更新依赖后重新编译环境
rush change 回答 rush 问题,生成变更文件 changeLog.md
rush scan 扫描幻影包
rush check 检测包安装问题

常用命令修饰符 more

–from (受 from 所影响的包)
–to(某个包以及依赖它的包)
–only (仅仅某一个包)

维护项目

初始化一个多包项目

rush init . 会生成相关配置文件
rush learn note_第1张图片

增加子模块包 doc

主要是修改 rush.json 文件
rush learn note_第2张图片
rush build 链接到子 project
在这里插入图片描述

cli 文件

install-run-rush.js 可以自定义 rush 执行命令时的额外一些操作
install-run.js 执行任意的 NPM 包
autoinstaller 自定义自动安装的包(环境等前置依赖)

rush config 其他配置

repository.url
ensureConsistentVersions
strictPeerDependencies

git hook 钩子

在 common/git-hooks 文件夹下定义

Prettier detail

自定义 rush 指令 detail

在 common/config/rush/command-line 中添加

回顾

所以他怎么帮助,通过了解,他提供了一些工具帮助我们进行仓库里多个项目的管理。
从项目的初始化到项目的发布。
整体的依赖构建,保障依赖库的正确性。
构建编译缓存,使用增量缓存,减少构建时间。
构建的自动化监听,自动完成依赖拓扑图的项目构建更新。
提供 custom plugin, 帮助自定义修改、检测项目
提供 custom command , 自定义命令

基于整个 rush.js 的构建, 团队提炼出来底层的 Rush Stack 基建包,如 rush/heft 等. 你可以使用这些底层工具实现一个自己的多项目管理工具

你可能感兴趣的:(前端,monorepo,前端,rush.js,monorepo)