corepack管理包管理器;nvm管理node版本;nrm管理npm源地址

corepack

corepack 管理"包管理器",包括 yarnpnpm。corepack 并不能管理 npm

corepack 是 nodejs 提供的功能,安装 nodejs 时 corepack 就一起安装了。它还是实验性功能,默认是关闭的,具体介绍看官方文档

注:下述说到 pnpm 的内容也适用于 yarn 。只提 pnpm 是为了方便叙述。

使用 corepack

先卸载 pnpm

使用 corepack 前,先卸载你自行安装的 pnpm,因为它们可能会影响 corepack。

卸载后使用 which pnpmpnpm -v 等命令确认是否成功

启用、禁用 corepack

启用: corepack enable ,禁用:corepack disable

为了查看启用的效果,用 which 找到 nodejs 所在目录(which是 linux 命令。在 windows cmd 中不能直接用,我是在 git bash 中执行的):

在这里插入图片描述

打开 nodejs 所在目录,包括以下内容:

在这里插入图片描述

开启 corepack:corepack enable。目录下多出了 pnpm 和 yarn 的相关文件(下图红框):

在这里插入图片描述
使用 which 命令查看。已经可以使用 pnpm 和 yarn 了,并且它们都来自 nodejs 目录:

在这里插入图片描述

禁用:corepack disable。目录下 pnpm 和 yarn 的相关文件(红框里的)又消失了。此时 pnpm 和 yarn 都不可用了。

corepack 控制的 pnpm 版本

通过 corepack 初次使用 pnpm 时,corepack 会从网络获取 pnpm 最新版本并缓存到本地。之后再使用 pnpm 时会直接用缓存的版本。

想要修改缓存的版本的话, 执行 corepack install -g pnpm@<version>

corepack 被禁用后重新启用,并不看作前面所说的”初次使用“。即:假设你之前通过 corepack 安装了 pnpm@4,corepack disable 后再 corepack enable ,使用 pnpm 还会使用 pnpm@4版本


使用 corepack 规定项目使用 pnpm 并锁定版本

多人开发项目时最好统一开发环境与工具。node 版本不同可能会导致项目无法启动、构建,或者 install package 时失败。pnpm 版本不同可能导致 pnpm-lock.yaml 不一致。

利用 corepack 可以规定项目使用的 pnpm 版本。在项目根目录下执行 corepack use pnpm@<version>

规定项目使用 pnpm,且版本为 4.0.0:

在这里插入图片描述

package.json 会自动添加 packageManager 项:

在这里插入图片描述

再使用 yarn 安装包的话,会阻止并报错:

在这里插入图片描述

但是使用 npm 安装包还是能成功,因为正如文章最开头说的: corepack 仅管理 yarnpnpm不能管理 npm

在这里插入图片描述


nvm

管理node版本。windows 系统用 nvm-windows

在这里插入图片描述


nrm

管理 npm registry 地址

在这里插入图片描述

  • 14
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值