【问题标题】:Within a pnpm workspace, how to work with local copy of a fork of a public package在 pnpm 工作区中,如何使用公共包的 fork 的本地副本
【发布时间】:2022-01-12 10:22:01
【问题描述】:

我正在使用 pnpm 及其工作区功能来构建几个应用程序,这些应用程序共享一些放在私有库中的代码。

除了私有依赖之外,我还从 npm 注册表中引用了一堆公共包。

这工作正常。

但是,公共参考有时会遇到一些我想帮助解决的错误。这需要在最终提交 PR 之前对项目进行分叉。

Pnpm 允许声明对 git 项目的依赖,但我如何引用分叉库的本地克隆?

我希望避免将任何代码推送到分叉项目,除非它已经在本地进行了测试。

因为我在 pnpm 工作区中工作,所以工作区本身就是一个完整的 git 存储库,它不允许我在工作区中使用 fork

【问题讨论】:

    标签: node.js git pnpm


    【解决方案1】:

    您可以使用链接。只需将您的依赖项替换为具有分叉存储库的相对路径的链接即可。例如:

    {
      "dependencies": {
        "foo": "link:../foo"
      }
    }
    

    如果这个包不是任何项目的直接依赖,使用overrides:

    {
      "pnpm": {
        "overrides": {
          "foo": "link:../foo"
        }
      }
    }
    

    【讨论】:

    • 感谢您的回答,但也感谢您指出packages.json 文件的pnpm 部分中有很棒的东西。它可能有助于解决直接或间接依赖项中的误用次数
    猜你喜欢
    • 2014-10-13
    • 1970-01-01
    • 1970-01-01
    • 2013-10-19
    • 1970-01-01
    • 2022-12-06
    • 2014-10-03
    • 1970-01-01
    • 2020-04-11
    相关资源
    最近更新 更多