💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
[TOC] ## 命令行 ### pnpm add 安装软件包及其依赖的任何软件包 参数 ``` --save-prod, -P // 安装生成依赖 --save-dev, -D // 开发依赖 --save-optional, -O //Install the specified packages as optionalDependencies. --save-exact, -E //保存的依赖会被指定为一个确切的版本, 而不是使用 pnpm 的默认 semver range operator 配置. --save-peer //Using --save-peer will add one or more packages to peerDependencies and install them as dev dependencies. --global, -g //安装全局依赖 --workspace //仅添加在 workspace 找到的依赖项. ``` 示例 ``` pnpm add ./package.tar.gz // 从本地安装 pnpm add ./some-directory // 从本地安装 ``` ### pnpm install / i 用于安装项目所有依赖 ``` --force // 强制安装依赖 --offline //只依赖本地 ``` ### pnpm update / up ``` --recursive, -r [--depth 100] // 更新子目录深度为 100 以内的所有包,--depth 指定更新 --global, -g // 更新全局安装的依赖包。 --latest, -L // 将所有依赖项更新到最新版本 --prod, -P // 仅更新在 dependencies 和 optionalDependencies 中的依赖项 --dev, -D // 仅更新在 devDependencies中的依赖项。 ``` ### pnpm remove ``` --recursive, -r // 当在 工作区 中使用此命令时,将从每个工作区的包中移除相关依赖(或 多个依赖) --global, -g ``` ### pnpm link 在不发布的情况下,可以将一个本地包链接到另一个项目中 ``` --global ``` 示例 ``` // 在当前项目中执行 pnpm link [ --global ] // 在另一个需要依赖的项目中执行 pnpm link [--global] <包名> ``` ### pnpm unlink 取消链接一个系统范围的package 如果不带参数调用,则当前项目内的所有链接的依赖项会被取消链接 ### pnpm prune 移除不需要的packages。 ``` --prod // 删除在 devDependencies 中指定的包。 --no-optional // 删除在 optionalDependencies 中指定的包。 ``` ### pnpm dlx `pnpm dlx` 是一个用于执行依赖项中包含的 CLI 工具的命令。它类似于 `npx` 如 ``` pnpm dlx create-react-app ./my-app ``` ### pnpm create 专门用于创建 create ``` pnpm create create-react-app ``` ### pnpm changeset 生成日志文档 1. 初始化 Changeset ``` pnpm changeset init ``` 这将在项目中创建一个 .changeset 目录。 2. 创建一个 Changeset ``` pnpm changeset ``` 3. 生成变更日志: ``` pnpm changeset version ``` 4. 发布新版本 ``` pnpm publish ``` Changesets 会自动处理版本更新和变更日志生成 ### pnpm patch 修改一个依赖包的内容 格式 ``` pnpm patch <pkg name>@<version> ``` ### pnpm outdated 检查过期的 packages。 ### pnpm why 显示依赖于指定 package的所有 package。 ### pnpm patch-commit 提交一个修改 ``` pnpm patch-commit <path> ``` 格式 ``` > pnpm path is-odd@3.0.1 // 输出到一个tmp 地址进行修改 > pnpm path-commit tmp_path // 会把补丁绑定到当前库下 patches ``` ### patch-remove 移除补丁 ``` pnpm patch-remove foo@1.0.0 bar@1.0.1 ```