第三方包有 bug?手把手教你用 pnpm patch 本地给 Next-auth 打补丁

271 阅读1分钟

前言

next-auth.js.org/tutorials/c… NextAuth 在国内需要🪜,然后它会自己做一层转发导致我们在命令行里转🪜失败。为了修复这个问题,我们需要更改源码。但是更改源码如何跟团队其他人同步?如何在网页CICD部署时也能带上我们的更改?

image.png

为了解决以上问题,于是有了这篇文章的主题:利用pnpm patch给本地包打补丁

正文

// 初始化项目
pnpm dlx next-auth-patch

// 装包(这里用了 ni)
ni next-auth

// 准备打补丁
pnpm patch next-auth

image.png

此时命令行已经提示你可以输入命令/private/var/folders/20/9pz2ngk12qv6q57c_3kcggxh0000gn/T/10cf48fd2a3274cfabfe546fa215553e进行修改

修改成功时输入命令pnpm patch-commit '/private/var/folders/20/9pz2ngk12qv6q57c_3kcggxh0000gn/T/10cf48fd2a3274cfabfe546fa215553e'

image.png

当你完成时,可以看到生成了一个 patches文件夹,用于记录你的补丁,这样就可以解决上述问题了~

结语

目前 yarn 暂不支持yarn patch

image.png

其他版本如npm、yarn的 patch 可以参考这篇文章:参考文章