首页
学习
活动
专区
圈层
工具
发布
技术百科首页 >pnpm >pnpm 的 patch 补丁功能如何使用?

pnpm 的 patch 补丁功能如何使用?

词条归属:pnpm

1. 补丁的创建流程

pnpm 内置补丁功能,允许开发者在不 fork 仓库的情况下修改第三方依赖的源码。使用 pnpm patch 命令后,pnpm 会将目标包解压到临时目录中,开发者可直接编辑其中的文件。修改完成后,通过 pnpm patch-commit 生成统一差异格式的补丁文件,并自动在 package.json 的 pnpm.patchedDependencies 字段中注册补丁路径。

2. 补丁的版本管理

补丁可按包名、精确版本或版本范围进行匹配。优先级从高到低依次为:精确版本补丁、版本范围补丁、仅包名补丁。例如可为 foo@2.1.0 指定专用补丁,为 foo@^2.0.0 指定通用补丁,未匹配到更具体版本的包将应用最宽泛的补丁。锁文件中会记录补丁文件的哈希值,确保补丁内容未被篡改。

3. 自动应用与移除

补丁在安装阶段自动应用,无需额外操作。若需移除补丁,使用 pnpm patch-remove 命令即可清除补丁文件和相关配置。pnpm v11 起,补丁应用失败会直接抛出错误,不再提供忽略失败的选项,以确保补丁机制的可靠性。

问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
领券