概述
因为公司项目需要,经常要从外网将代码拷贝到内网进行调试,因为pnpm是基于链接的npm管理工具,所以pnpm的项目迁移和普通的npm项目不一样。
步骤
- 离线安装pnpm
# 在互联网设备执行 pnpm 的安装 npm i pnpm --install-strategy=shallow # 完成后能看到 node_modules 目录下新建了 pnpm 目录 # 打包node_modules文件夹,拷贝到离线设备解压 cd node_modules/ npm i -g pnpm/
复制
注意:
离线设备安装好pnpm之后,不能改变解压后的node_modules路径,不然会导致pnpm执行出错的
- 设置pnpm的全局路径
# 允许设置全局安装包的 bin 文件的目标目录。设置该目录需要将该目录添加到PATH路径里面才可以 # 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离线安装全局包