我会逐步编写所有内容。我从头到尾阅读并应用了网站上的所有页面(从“简介”到“高级”)。
出现可能也很有用,我不是专家软件开发人员。我想成为一种爱好。
当我在一个旧项目上工作时,我想再次尝试“ pnpm”,这是我以前尝试过但未能使用的。
使用
- 操作系统:Windows 10 x64
- 编辑:WebStorm
- 节点:14.15.0
项目: 我正在处理的项目是“离子角”项目。当我将其与“ npm”一起使用时,项目的总大小为“ 699 MB”。 问题: 安装“ pnpm”并制作设置文件之后,我打开了项目,并等待它使用“ pnpm install”命令安装软件包。一切麻烦都结束了。但是,该项目的总大小已增加到“ 1.11 GB”。
就我所做的来,一步一步地
- 安装nodejs LTS版本14.15.0 win64
- 运行PowerShell(以管理员身份)。
-
npm配置编辑
-
更改所有路径->前缀,缓存,tmp,userconfig,globalignorefile,globalconfig。
.npmrc文件更改列表;
prefix=C:\Users\mhy\npm\.npm-global cache=C:\Users\mhy\npm\.npm-cache tmp=C:\Users\mhy\npm\.npm-temp userconfig=C:\Users\mhy\npm\.npmrc globalignorefile=C:\Users\mhy\npm\.npm-global\etc\npmignore globalconfig=C:\Users\mhy\npm\.npm-global\etc\npmrc store-dir=C:\Users\mhy\pnpm\.pnpm-store global-dir=C:\Users\mhy\pnpm\pnpm-global npm-path=C:\Program Files\nodejs
- 重新启动计算机
- 安装pnpm PowerShell
- (调用WebRequest'https://raw.githubusercontent.com/pnpm/self-installer/master/install.js')。节点 )
- pnpm创建%AppData%Romaning%\ npm文件夹。并剪切文件夹将新路径粘贴到所有文件。 (pnpm,pnpm.cmd,pnpx,pnpx.cmd移至npm-path [nodejs安装文件夹])
- 根据网站上的叙述,我在“ .npmrc”文件中添加了以下路径。 加载.npmrc文件(两个相同的文件)并添加[store-dir,global-dir,npm-path->更改pnpm]路径
- 打开WebStorm ide并转到“设置”->“语言和框架”-> node.js和NPM->“选择程序包管理器”,将其手动更改为->“ npm-path”(因为我将“ pnpm,pnpm.cmd”文件移动了到这个位置。)
- 测试;
- 运行PowerShell并命令:pnpm add @ ionic / cli -E --global “ @ ionic / cli”已安装在指定位置,没有任何问题。
- 然后,使用PowerShell将命令“ pnpm add -E --global”安装在“ devDependencies”中。 它全部配置好了,没有任何问题。返回WebStorm ide,然后关闭PowerShell。
- 打开项目并向终端写入此命令“ pnpm install”
- pnpm好的,没问题。一切看起来都很好。
- 当我再次查看“ Project”文件夹的大小时,我发现它已经太大了。
- 旧大小699 MB新大小1.11 GB
- 仅node_module文件夹996 MB。
- “ pnpm”后项目文件夹的大小如下。
-
项目文件夹= 1.11 GB
-
node_module文件夹= 996 MB
-
node_module-> .pnpm(我想是虚拟存储文件夹)437 MB
-
node_module->所有其他没有.pnpm文件夹的文件夹642 MB
-
node_module-> .ignored + .ignored_ast_types-flow,.ignored_eslint-scope .ignored_mime-types .ignoder_multicast-dns-service-types-> 244 MB
-
以及我之前提到的创建的“ pnpm-global”和“ pnpm-store”文件夹(.npmrc文件);
-
pnpm-global-> 269 MB
-
pnpm-store-> 540 MB
项目总大小+全局pnpm和存储= 2 GB(Windows资源管理器显示的文件夹大小为2gb) 我使用PowerShell并获取文件夹大小,列出所有传输到excel列的文件夹,并将文件夹总和= 767 MB
-
使用npm的旧大小= 699 MB
-
使用pnpm的新大小= 767 MB
我使用PowerShell命令
$ fso =新对象-com Scripting.FileSystemObject gci-目录
| select @{l='Size'; e={$fso.GetFolder($_.FullName).Size}},FullName
排序大小-降序`|| ft @ {l ='大小[MB]'; e = {'{0:N2}'-f($ _。Size / 1MB)}},全名|输出文件out.txt
实际上,我认为应该是这样的。它将把主程序包加载到一个文件夹中(例如C:\ pnpm-global),并在其他项目中使用它们时将其作为symlink-junction添加到其中。但是网站上有一条“ virtual-store-dir”的注释。注意:虚拟存储不能在多个项目之间共享。每个项目都应该有自己的虚拟存储。
我安装“ pnpm”是因为我的目标是减小项目大小(连接符号链接等)。
当我想对Internet上的“ pnpm”有所了解时,我也找不到任何资源。只有网站,资源非常有限。
我认为并没有太多用处,但是我不知道当一个项目使用了太多项目时会是什么样。