pnpm项目内网迁移技巧
安装
# 在互联网设备执行 pnpm 的安装
npm i pnpm --install-strategy=shallow
# 完成后能看到 node_modules 目录下新建了 pnpm 目录
# 压缩上传node_modules文件夹,拷贝到离线设备解压
cd node_modules/
npm i -g 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,即可
问题 vscode pnpm : 无法加载文件 C:\Users\hp\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本
在系统中搜索框 输入 Windos PowerShell
2、点击“管理员身份运行”
3、输入“ set-ExecutionPolicy RemoteSigned”回车
4、根据提示,输入A,回车
5、再次回到pnpm -v执行成功。
ps:不只是pnpm命令,包括cnpm、yarn等这些命令,如果执行时,报这样的错误,都可以通过此方法解决。前提是,如果是用npm命令来安装这些CLI命令工具,必须安装到全局环境中,才能生效。