博客
关于我
node, nvm, npm,pnpm,以前简单的前端环境为什么越来越复杂
阅读量:792 次
发布时间:2023-02-16

本文共 1021 字,大约阅读时间需要 3 分钟。

PNPM(Performant NPM)是一个快速的、节省磁盘空间的包管理工具,它是作为npm的替代品而设计的。与npm和Yarn等其他包管理工具相比,PNPM有几个独特的特性和优势。

主要特点:

  1. 速度快:PNPM利用硬链接和符号链接来管理依赖项,这可以显著提高安装速度。
  2. 节省磁盘空间:通过硬链接从全局存储库中链接依赖项,PNPM可以避免重复下载相同的依赖包,从而节省磁盘空间。
  3. 非扁平化存储:与npm和Yarn的扁平化node_modules不同,PNPM使用一个非扁平化的node_modules结构,这有助于避免依赖项冲突。
  4. 支持monorepos:PNPM内置了对monorepos的支持,使得在单个仓库中管理多个项目变得更加容易。
  5. 严格的安全性:PNPM在安装依赖项时会进行一些额外的安全检查。

主要优势:

  • 重复利用:如果多个项目依赖于同一个版本的包,PNPM会从全局存储库中链接该包,而不是重新下载。
  • 原子操作:安装或更新包时,PNPM会创建一个临时的目录,并在操作成功完成后将其移动到目标位置,这样可以防止安装过程中出现的不完整状态。
  • 更好的隔离:非扁平化的node_modules结构提供了更好的依赖项隔离,减少了包冲突的可能性。
  • 依赖项验证:PNPM会验证每个包的完整性,确保它们没有被篡改。

安装PNPM:

可以通过npm来安装PNPM:

npm install -g pnpm

或者,如果已经安装了PNPM,可以使用PNPM自身来更新:

pnpm add -g pnpm

使用PNPM:

一旦安装了PNPM,你可以使用它来安装包:

pnpm install

安装单个包:

pnpm add 

添加开发依赖项:

pnpm add -D 

更新包:

pnpm update

移除包:

pnpm remove 

PNPM工作原理:

PNPM使用一种称为“内容寻址存储(Content-addressable storage)”的技术。当安装包时,PNPM会将包的文件存储在一个全局的存储库中,并在项目的node_modules目录中使用硬链接指向这些文件。这意味着同一个版本的包不会被多次下载,从而节省了磁盘空间。

由于这些特点,PNPM在开发者社区中获得了一定的认可,尤其是在大型项目和monorepos的管理上。尽管如此,npm和Yarn仍然是更广泛使用的包管理工具,但PNPM提供了一个值得考虑的替代方案。

转载地址:http://uijfk.baihongyu.com/

你可能感兴趣的文章
NFS Server及Client配置与挂载详解
查看>>
NFS 服务配置篇
查看>>
NFS共享文件系统搭建
查看>>
nfs复习
查看>>
NFS安装配置
查看>>
NFS服务器配置-服务启动与停止
查看>>
NFS的安装以及windows/linux挂载linux网络文件系统NFS
查看>>
NFS的常用挂载参数
查看>>
NFS网络文件系统
查看>>
NFS远程目录挂载
查看>>
nft文件传输_利用remoting实现文件传输-.NET教程,远程及网络应用
查看>>
NFV商用可行新华三vBRAS方案实践验证
查看>>
ng build --aot --prod生成文件报错
查看>>
ng 指令的自定义、使用
查看>>
ng6.1 新特性:滚回到之前的位置
查看>>
nghttp3使用指南
查看>>
Nginx
查看>>
nginx + etcd 动态负载均衡实践(一)—— 组件介绍
查看>>
nginx + etcd 动态负载均衡实践(三)—— 基于nginx-upsync-module实现
查看>>
nginx + etcd 动态负载均衡实践(二)—— 组件安装
查看>>