pnpm项目内网迁移技巧

概述

因为公司项目需要,经常要从外网将代码拷贝到内网进行调试,因为pnpm是基于链接的npm管理工具,所以pnpm的项目迁移和普通的npm项目不一样。

步骤

  1. 离线安装pnpm
# 在互联网设备执行 pnpm 的安装
npm i pnpm --install-strategy=shallow
# 完成后能看到 node_modules 目录下新建了 pnpm 目录
# 打包node_modules文件夹,拷贝到离线设备解压
cd node_modules/
npm i -g pnpm/

注意:
离线设备安装好pnpm之后,不能改变解压后的node_modules路径,不然会导致pnpm执行出错的

  1. 设置pnpm的全局路径
# 允许设置全局安装包的 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"
  1. 互联网机器,进入工程目录,执行pnpm i
  2. 工程目录中删除node_modules,打包"E:\pnpm-store"和工程目录
  3. 到内网机器参考第一步,解压pnpm-store目录,按照解压路径,重新设置pnpm全局路径
  4. 解压工程目录,执行pnpm i,即可

参考链接

pnpm 基本详细使用教程(安装、卸载、使用、可能遇到的问题及解决办法)
pnpm项目运行启动以及如何迁移到内网
NPM离线安装全局包

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/708933.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C语言】while循环语句

🎈个人主页:豌豆射手^ 🎉欢迎 👍点赞✍评论⭐收藏 🤗收录专栏:C语言 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步&…

CS0449

CS 0449 – Project 1: Mastermind and EXIF Viewer Mastermind Implementation (30 points) In this game, the computer chooses 4 pegs each with one of 6 colors. This is the color-based predecessor to Wordle. The player’s job is then to guess the colors that t…

windows IIS 申请和配置https(SSL)的工具 win-acme

win-acme 是一个为Windows平台设计的工具,用于从Lets Encrypt自动获取和续期SSL/TLS证书,特别适合用于IIS(Internet Information Services)服务器。它的使用相对简单,提供了一个用户友好的命令行界面,以及一…

Python + Selenium —— 键盘操作!

Keys 类对键盘按键进行了定义,结合 send_keys() 方法可以向页面元素发送各种键盘按键。 比如在京东首页的搜索框,输入查询的内容后,再按一次回车。这是我们大部分人操作搜索的过程。 from selenium.webdriver.common.keys import Keys # 引…

技术派数据库表自动初始化(学习)

不需要在db中手动创建或者导入相关的schema、data&#xff0c;项目启动自动创建对应的表&#xff0c;并初始化。实现该过程。 Liquibase数据库版本管理 依赖配置 在paicoding-web模块中&#xff0c;pom.xml 文件中添加 <dependency><groupId>org.liquibase</g…

自 JDK 8 到 JDK 21 以来所有 Java 和 JVM 特性的分类列表

请参看文章&#xff1a;自 JDK 8 到 JDK 21 以来所有 Java 和 JVM 特性的分类列表

【ECMAScript语法】讲解

ECMAScript语法介绍 ECMAScript&#xff08;通常缩写为ES&#xff09;是一种由Ecma国际&#xff08;前称为欧洲计算机制造商协会&#xff09;标准化的脚本程序语言的标准化&#xff0c;它被用来创建客户端和服务器端的应用程序&#xff0c;但是它最为人所熟知的应用环境还是作…

python爬虫之协程知识点记录

一、协程 概念 协程 又称微线程(纤程)&#xff0c;是一种用户态的轻量级线程 子程序 在所有的语言中都是层级调用的&#xff0c;比如A中调用B&#xff0c;B在执行过程中调用C&#xff0c;C执行完返回&#xff0c;B执行完返回&#xff0c;最后是A执行完毕。这是通过栈实现的&a…

01 MySQL之连接

1. 连接 1.0 基础认知 多表(主表)和一表(从表的区别): 多表一般是主表&#xff0c;一般存储主要数据&#xff0c;每个字段都可能存在重复值&#xff0c;没有主键&#xff0c;无法根据某个字段定位到准确的记录&#xff1b; 一表一般是从表&#xff0c;一般存储辅助数据&…

2024年腾讯云优惠活动——十大活动TOP10来看看

腾讯云服务器多少钱一年&#xff1f;62元一年起&#xff0c;2核2G3M配置&#xff0c;腾讯云2核4G5M轻量应用服务器218元一年、756元3年&#xff0c;4核16G12M服务器32元1个月、312元一年&#xff0c;8核32G22M服务器115元1个月、345元3个月&#xff0c;腾讯云服务器网txyfwq.co…

「板块轮动」和「经济周期」的关系

这是 溪踪投研 的第 005 篇文章 初涉股市&#xff0c;如身在山中&#xff0c;丘壑纵横&#xff0c;不知所处。这时不妨把时间拉长、范围拓宽&#xff0c;视野格局大为不同&#xff0c;就更容易找到投资方向&#xff0c;趋利而动、避害而行。 一、逃不开的「经济周期」 如同人…

阿里云4核16G服务器多少钱?幻兽帕鲁配置报价

2024阿里云幻兽帕鲁专用服务器价格表&#xff1a;4核16G幻兽帕鲁专用服务器26元一个月、149元半年&#xff0c;默认10M公网带宽&#xff0c;8核32G幻兽帕鲁服务器10M带宽价格90元1个月、271元3个月。阿里云提供的Palworld服务器是ECS经济型e实例&#xff0c;CPU采用Intel Xeon …

Android使用AtomicReference

AtomicReference 是 Java 中用来提供原子操作的类之一&#xff0c;它可以在多线程环境下安全地对对象引用进行读取和更新操作。在 Kotlin 中&#xff0c;我们也可以直接使用 AtomicReference 来实现线程安全的参数。 以下是一个简单的示例&#xff0c;演示了如何在 Kotlin 中使…

迎接2024年3月5-7日国际生物发酵展-华运机械

参展企业介绍 合肥华运机械制造有限公司初创于1995年&#xff0c;系国内专业性流体机械设备制造的高新技术企业、安徽省专精特新企业&#xff0c;公司位于国家级开发区合肥双凤工业园&#xff0c;拥有15000㎡现代化厂房&#xff0c;几十台精密数控机床和焊接机器人&#xff0c…

vue3使用echarts绘制地图

vue3使用echarts绘制地图 安装echarts npm install echarts下载地图的json数据【我这里是把json数据单独粘出来然后新建了一个文件china.json】 下载中国及各个省份的地图数据引入 import chinaJson from ./china.json绘制地图 <template><div ref"myChart&q…

msql 查询json类型数据

模糊查询数组类型数据 SELECT * FROM table_name WHERE JSON_EXTRACT(column_name, $) LIKE %value%;# table_name 表名 # column_name:字段名 # $ 固定写死模糊查询键值对类型数据 SELECT * FROM table_name WHERE JSON_EXTRACT(column_name, $.key) LIKE %value%;# table_n…

JVM(3)

垃圾回收(GC)相关 在C/C中,当我们使用类似于malloc的内存开辟,还需要手动释放内存空间,这样的机制在使用时给我们造成了诸多不便,但在Java中,有垃圾回收这样的机制,这就是指:我们不再需要手动释放,程序会自动判定,某个内存空间是否可以继续使用,如果内存不使用了,就会自动释放…

前端面试知识整理:vue的钩子函数

vue的钩子函数有好几类 一、生命周期钩子函数 &#xff08;1&#xff09;beforeCreate&#xff08;&#xff09; 实例创建前触发 &#xff08;2&#xff09;created&#xff08;&#xff09; 实例创建完成&#xff0c; &#xff08;3&#xff09;beforeM…

swoole协程

协程执行顺序 //hyperf框架 use Co;go(function () {Co::sleep(1); // Io等待一秒echo "hello go1 \n";});echo "hello main \n";go(function () {echo "hello go2 \n";});//打印结果hello mainhello go2hello go1/*运行此段代码, 系统启动一个…

数据抽取平台pydatax介绍--实现和项目使用

数据抽取平台pydatax实现过程中&#xff0c;有2个关键点&#xff1a; 1、是否能在python3中调用执行datax任务&#xff0c;自己测试了一下可以&#xff0c;代码如下&#xff1a; 这个str1就是配置的shell文件 try:result os.popen(str1).read() except Exception as …