包管理npm、yarn、pnpm区别

小咪咪 2023-10-11 16:32 132阅读 0赞

npm

npm 是Node.js标准的软件包管理器,随同 node.js 一起安装。
存在的不足:

1.npm install 下载速度慢

2.同一个项目,安装的无法保持一致性。原因是因为 package.json 文件中版本号的特点导致在安装的时候代表不同的含义,^是npm安装后的默认符号。

在这里插入图片描述

3.使用 npm 安装多个 js 包时,包会在同一时间下载和安装。安装过程中,其中一个包抛出了一个异常,但 npm 会继续安装其他包,所以错误信息就会在一大堆提示信息中丢失掉,以至于直到执行前,都不会发现实际发生的错误

Yarn

yarn 是为了弥补 npm 的一些缺陷而出现的,是由 Facebook、Google、Exponent 和 Tilde 联合推出的一个新的 JS 包管理工具。

npm和yarn的区别

1、并行安装:yarn安装包会同时执行多个任务,npm 需等待上一个任务安装完成才能运行下一个任务。

2、离线模式:如果你已经安装过一个包,用 yarn 再次安装会从缓存中获取,而 npm 会从网络下载。

3、版本锁定:yarn 默认有一个 yarn.lock 文件锁定版本,在使用npm或yarn安装之前会先检查lock文件上的版本,并来安装它们,保证环境统一,而 npm 默认从网络下载最新的最稳定的,版本锁定可以解决包之间版本不兼容问题,npm 也可以通过命令实现版本锁定。

4、更简洁的输出:yarn 安装包时输出的信息较少,npm 输出信息冗余。
在这里插入图片描述

pnpm

pnpm(performant npm) ,意味“高性能的 npm”。pnpm由npm/yarn衍生而来,解决了npm/yarn内部潜在的bug,极大的优化了性能,扩展了使用场景。被誉为“最先进的包管理工具”。
优势:

  • 包安装速度快。pnpm 不仅比 npm 快,而且比 yarn 快。无论是冷缓存还是热缓存,它都比 yarn 快。yarn 从缓存中复制文件,而 pnpm 只是从全局存储中链接它们。
  • 磁盘空间利用高效。所有文件都会存储在硬盘上的某一位置。 当软件包被被安装时,包里的文件会硬链接到这一位置,而不会占用额外的磁盘空间。

发表评论

表情:
评论列表 (有 0 条评论,132人围观)

还没有评论,来说两句吧...

相关阅读

    相关 linux管理

    包管理: linux一般有两种包: 源码包: 安装前需要进行编译成为二进制包才能使用 末尾一般常用.tar.gz来命名 二进制包:已编译 一般是rpm结尾命名

    相关 Go管理

    什么是包?为什么要使用包? 为了更好地组织类,Java 和GO都提供了包机制,用于区别类名的命名空间。 包的作用 1、把功能相似或相关的类或接口组织在同一

    相关 jar与War区别

    为了项目的部署和发布,通常把项目打包,通常在打包部署的时候,会在里面加上部署的相关信息。这个打包实际上就是把代码和依赖的东西压缩在一起,变成后缀名为.jar和.war的文件,就