1.迁移前的准备
首先看对node版本和pnpm版本的要求是什么,我的是自己电脑(windows系统)和内网电脑(windows系统)上的环境一致的
我的项目要求是1.node版本 16.20.0
2.pnpm版本 8.6.2 需要先将node 和 pnpm 安装好相应的版本
2.组装项目目录结构:
1.从git上拉去项目 地址:http://gitlab.XXXXXX/gdgp
账号密码登录 :用自己的 ,如:
XXXX@gientech.com
123456789XXXXX。
- 依次复制图片中项目的http下载地址 ,
- 打开vscode
- vscode终端中执行 git clone httpXXXXX,依次拉取 以下 5个项目仓库,并列排列
gdgp-front-shell
gdgp-front-app-metadata
gdgp-front-app-sys
gdgp-front-common-components
gdgp-front-common-utils
4.把gdgp-front-app-metadata,gdgp-front-app-sys,gdgp-front-common-components,gdgp-front-common-utils 拖进 gdgp-front-shell 中
3.运行项目,生成依赖包
1.vscode打开gdgp-front-shell, //终端打开就行
2.切换分支到自己代码所在分支,将以上5个仓库的分支全都切换掉
3.在终端中执行 pnpm i
4.依赖安装成功后,再在终端中执行 pnpm dev
5.到此为止,外网的项目跑成功啦,下面开始准备压缩包拷到内网的电脑里
注意:如果不是第一次启动项目,最好.pnpm-stroe文件夹删干净,再执行pnpm i 安装依赖,否则迁移到内网执行pnpm i装依赖的时候可能还是找不见依赖包,并且项目根目录pnpm i生成的pnpm-lock.yaml文件很有用,要随项目源码一起拷进内网中
4.将项目源码和pnpm生成的依赖包打包起来,迁移到内网中
1.将生成的.pnpm-stroe文件夹 打成压缩包,windows系统这个文件夹在项目所在盘的根目录下
2.将刚启成功后的项目中的node_modules文件夹删掉, 5个项目仓库的都删掉,项目根目录pnpm i生成的pnpm-lock.yaml文件很有用,要随项目源码一起拷进内网中
3.将删除后没有node_modules的 gdgp-front-shell打成压缩包
4.将pnpm-stroe 压缩包 和 gdgp-front-shell 压缩包 都拷进内网的电脑里,以下操作都是在内网电脑执行的
5.内网的电脑解压这俩个压缩包,把两个文件夹放在D盘根部目下 //项目和pnpm-stroe在一个根目录下即可,否则找不到依赖
6.vscode打开gdgp-front-shell,在终端中执行 pnpm I,安装依赖
7.再执行 pnpm dev 启动项目
8.到此,内网项目启动成功!
总结
3个重要部分,缺一不可
- .pnpm-stroe文件夹
- 项目源码,不能有node_modules文件夹
- pnpm i 执行完 生成的 pnpm-lock.yaml 文件
其他
关于mac和windows系统的差异:
真的很大!
我尝试过苹果系统,迁移到内网失败了,原因是我执行pnpm i 没有生成 pnpm-lock.yaml 文件,后来我就改用windows系统了,
并且苹果系统生成的.pnpm-stroe文件夹地址和windows也略有差异,具体见这个链接,我是从这找的,找.pnpm-stroe文件夹地址的方法亲测可用
https://qa.1r1g.com/sf/ask/3878264281/
https://blog.csdn.net/qq_41257129/article/details/123582047