仲灏小栈 仲灏小栈
首页
大前端
后端&运维
其他技术
生活
关于我
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

仲灏

诚意, 正心, 格物, 致知
首页
大前端
后端&运维
其他技术
生活
关于我
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 《前端项目基础建设》
  • HTML&CSS

  • JavaScript&TypeScript

  • Node

  • 构建

    • webpack考点梳理
    • 项目基础建设
    • 自制脚手架
    • webpack高级使用
    • babel
    • pnpm 配置
      • pnpm介绍
      • 配置
        • pnpm源配置
        • pnpm 实际安装位置配置
  • Vue

  • React

  • 小程序

  • 跨端

  • Electron

  • WebGL&GIS

  • 浏览器

  • 面经

  • 其他

  • 大前端
  • 构建
仲灏
2023-09-17
目录

pnpm 配置

# pnpm介绍

img

当使用 npm 时,如果你有 100 个项目,并且所有项目都有一个相同的依赖包,那么, 你在硬盘上就需要保存 100 份该相同依赖包的副本。然而,如果是使用 pnpm,依赖包将被 存放在一个统一的位置,因此:

  1. 如果你对同一依赖包需要使用不同的版本,则仅有 版本之间不同的文件会被存储起来。例如,如果某个依赖包包含 100 个文件,其发布了一个新 版本,并且新版本中只有一个文件有修改,则 pnpm update 只需要添加一个 新文件到存储中,而不会因为一个文件的修改而保存依赖包的 所有文件。
  2. 所有文件都保存在硬盘上的统一的位置。当安装软件包时, 其包含的所有文件都会硬链接自此位置,而不会占用 额外的硬盘空间。这让你可以在项目之间方便地共享相同版本的 依赖包。

最终结果就是以项目和依赖包的比例来看,你节省了大量的硬盘空间, 并且安装速度也大大提高了!

# 配置

pnpm 使用的是 npm 的配置 (opens new window) 格式。因此,你应该以 npm 相同的方式来对其进行配置。例如,

pnpm config set store-dir /path/to/.pnpm-store
1

如果未配置任何存储,则 pnpm 将在同一硬盘上自动创建一个存储。 如果你需要 pnpm 能够跨多个硬盘或文件系统工作, 请阅读 FAQ (opens new window)。

# pnpm源配置

pnpm set registry "https://registry.npmmirror.com"
1

# pnpm 实际安装位置配置

默认安装在该项目盘路径的.pnpm-store 上

修改

在pnpm的配置文件中配置以下配置:

  1. 配置PNPM全局安装路径
  2. 配置PNPM全局bin文件安装路径
  3. 配置PNPM cache路径
  4. 配置PNPM state路径

把E:.pnpm-store替换成PNP全局安装的路径

shell
复制代码pnpm config set global-bin-dir "E:\.pnpm-store"
pnpm config set cache-dir "E:\.pnpm-store\cache"
pnpm config set state-dir "E:\.pnpm-store\state"
pnpm config set global-dir "E:\.pnpm-store\global"
1
2
3
4
5

软件包存储应与安装位于同一驱动器和文件系统上,否则软件包将被复制,而不是链接。这是由于硬链接工作方式的限制,一个文件系统上的文件无法寻址另一个文件系统中的位置。

上次更新: 2023/09/17, 20:06:58
babel
持久化存储实时读取

← babel 持久化存储实时读取→

最近更新
01
vim日常使用记录
04-02
02
滑动窗口最大值
04-02
03
有效的字母异位词
04-02
更多文章>
Theme by Vdoing | Copyright © 2021-2025 izhaong | github | 蜀ICP备2021031194号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式