概述
因为公司项目需要,经常要从外网将代码拷贝到内网进行调试,因为pnpm是基于链接的npm管理工具,所以pnpm的项目迁移和普通的npm项目不一样。
步骤
- 离线安装pnpm
bash
# 在互联网设备执行 pnpm 的安装
npm i pnpm --install-strategy=shallow
# 完成后能看到 node_modules 目录下新建了 pnpm 目录
# 打包node_modules文件夹,拷贝到离线设备解压
cd node_modules/
npm i -g pnpm/
注意:
离线设备安装好pnpm之后,不能改变解压后的node_modules路径,不然会导致pnpm执行出错的
- 设置pnpm的全局路径
bash
# 允许设置全局安装包的 bin 文件的目标目录。
pnpm config set global-bin-dir "E:\pnpm-store"
# 包元数据缓存的位置。
pnpm config set cache-dir "E:\pnpm-store\pnpm-cache"
# pnpm 创建的当前仅由更新检查器使用的 pnpm-state.json 文件的目录。
pnpm config set state-dir "E:\pnpm-store\pnpm-state"
# 指定储存全局依赖的目录。
pnpm config set global-dir "E:\pnpm-store\global"
# 所有包被保存在磁盘上的位置。
#(可选,以下这条命令可以选择不执行也是OK的)
pnpm config set store-dir "E:\pnpm-store\pnpm-store"
- 互联网设备,进入工程目录,执行pnpm i
- 工程目录中删除node_modules,打包"E:\pnpm-store"和工程目录
- 到内网机器参考第一步,解压pnpm-store目录,按照解压路径,重新设置pnpm全局路径
- 解压工程目录,执行pnpm i,即可
参考链接
pnpm 基本详细使用教程(安装、卸载、使用、可能遇到的问题及解决办法)
pnpm项目运行启动以及如何迁移到内网
NPM离线安装全局包