pnpm 备忘

pnpm 设置仅安装生产依赖

pnpm 仅安装生产依赖

要使用pnpm仅安装生产(prod)依赖项,您需要使用--prod-P标志。运行以下命令:

bash
1pnpm install --prod

或使用短标志:

bash
1pnpm install -P

这将仅安装在package.json文件中定义的dependencies部分中列出的依赖项。devDependencies部分中的依赖项将不会被安装。这在准备生产环境时非常有用,因为您只需安装实际运行应用程序所需的依赖项,而无需安装开发过程中使用的工具。

pnpm prune --prod

pnpm prune --prod 是一个命令,用于在使用 pnpm(一种与 npm 类似的 Node.js 包管理器)管理的项目中删除不必要的依赖项。pnpm prune --prod 的作用是移除开发(dev)依赖项,只保留生产(prod)依赖项。

在项目的生命周期中,您可能会安装许多开发依赖项,这些依赖项仅在开发过程中需要,例如:构建工具、测试框架和代码格式化工具等。然而,在生产环境中部署应用程序时,这些依赖项通常是不需要的。保留这些不必要的依赖项可能会导致部署的镜像变大,从而影响部署速度和运行时性能。

pnpm prune --prod 命令可帮助您删除这些不必要的依赖项,从而优化生产环境镜像。这个命令会扫描 pnpm-lock.yaml 文件,找到所有标记为 dev 的依赖项并将它们从 node_modules 文件夹中移除。这样,您可以获得一个精简的 node_modules 文件夹,仅包含生产环境所需的依赖项。

总之,pnpm prune --prod 命令可以帮助您优化项目的生产环境镜像,仅保留所需的生产依赖项,从而减小镜像大小、提高部署速度和运行时性能。

避免副作用使用 pnpm prune --prod --config.ignore-scripts=true

清理磁盘空间

pnpm是一个JavaScript包管理器,它有助于开发者管理他们的项目中使用的各种库和工具。如果你想要用pnpm清理磁盘空间,可以尝试以下方法:

  1. 删除 node_modules 文件夹:node_modules文件夹通常会占用大量的磁盘空间。你可以在项目的根目录下找到它,并手动删除。此外,如果你有多个pnpm项目,你可能需要在每个项目中都做同样的操作。如果你想要自动化这个过程,可以在命令行中使用以下命令:

    bash
    1find . -name "node_modules" -type d -prune -exec rm -rf '{}' +

    请注意,此命令会在当前目录及其子目录中删除所有的node_modules文件夹,所以在运行之前请确认你是否真的希望这么做。

  2. 清理 pnpm 的全局存储:pnpm使用全局存储来存放所有项目共享的包,以节省空间和安装时间。然而,随着时间的推移,这个全局存储可能会变得相当大。你可以使用以下命令来清理不再需要的包:

    bash
    1pnpm store prune

    这将删除所有不再由你的项目依赖的包。如果你只是想查看哪些包将会被删除,可以添加--dry-run选项:

    bash
    1pnpm store prune --dry-run

请注意,在删除任何文件或运行任何清理命令之前,都应确保你的数据已经备份,以防任何重要的数据丢失。

pnpm patch

shell
1pnpm patch <pkg name>@<version>