npm yarn pnpm cache

782 阅读1分钟

npm

node版本:v16.14.0

install流程:

Untitled Diagram.drawio (1).svg

检查config这一步需要check .npmrc文件,依次从用户项目的.npmrc->家目录的npmrc->全局npmrc(比如nvm 16.14.0版本folder中)->内置npmrc

查看cache目录:npm config get cache mac上一般在~/.npm目录中

清空cache: npm cache clean --force 这个命令的作用就是删除_cacache目录下的所有包。 执行这个命令,然后执行npm install lodash-es, 这个时候查看_cache目录。

image.png 解压如图所示 image.png

打开50aa6cae0ce2b28bd3e28c01e533a9631bab7f2400211c680d8603efa6d4长这样

image.png

PS: 今天想研究下如何debug npm install,因为这个install程依赖了pocate这个包, 我想一步一步看这个执行过程是怎么样的,结果google了半天还是没找到解决办法,有人知道怎么搞么?

yarn

install:

image.png

cache目录:yarn cache dir 得到~/Library/Caches/Yarn/v6, 这里可以看到和npm的cache目录结构是明显不一样的。

image.png 如何查看yarn.lock文件结构,会发现长这个样子:

lodash-es@^4.17.21:
  version "4.17.21"
  resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee"
  integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==

pnpm

获取全局store路径执行 pnpm store path得到~/Library/pnpm/store/v3, 里面folder有点多,暂时不清楚那么多文件是干啥的,先用find命令找到lodash的json再说。

image.png format一下,lodash-es这个包里的每个文件都被保存了起来,给了integrity image.png

先写到这,等之后研究更深些的时候再来更新这个。