NPM 和 CI:--缓存与 node_modules/

NPM and CI: --cache vs node_modules/

使用 GitLab 我可以缓存 node_modules/ and/or 我可以将参数缓存到 npm ci --cache <dir>

这两个选项有什么区别?

GitLab docs显示:

npm ci --cache .npm --prefer-offline

但他们没有解释为什么我不想缓存 node_modules/

尺寸差异:

❯ du -hs .npm
136M    .npm
❯ du -hs node_modules
932M    node_modules

我的情况差异很大,通过 NOT 缓存 node_modules/ 我将 CI 管道时间减少了 30-50%。

包含每个阶段会更快

npm ci --cache .npm --prefer-offline

然后就是用GitLab缓存层node_modules/搬来搬去

我想如果不使用 containerized runners.

,数据可能会有所不同