代码之家  ›  专栏  ›  技术社区  ›  LongHike

如何直接从github使用自己的monorepos?

  •  0
  • LongHike  · 技术社区  · 3 年前

    我大量直接使用github(即不使用npm注册表)来实现我自己的可重用节点模块。所以我在我的包裹里做什么。json(我使用的是经典纱线)是:

    "dependencies": {
        "my-module": "https://github.com/username/my-module.git#v0.0.12",
    },
    

    有了npm,我会四处走动,做一些类似的事情

    "dependencies": {
        "@my-module/client": "0.0.12",
    },
    

    我试过了

    "dependencies": {
      "@my-module/package-one": "https://github.com/username/my-module.git#v0.0.12",
    },
    

    我也试过了

    "dependencies": {
      "package-one": "https://github.com/username/my-module.git/package-one#v0.0.12",
    },
    

    也不管用。

    我能做到吗?

    0 回复  |  直到 3 年前
        1
  •  0
  •   jebbie    3 年前

    https://classic.yarnpkg.com/lang/en/docs/workspaces/

    我想你甚至不需要在monorepo中直接将依赖关系指向github,因为当你在monorepo中时,一切都由Thread工作区处理,不需要在任何地方发布。

    如果仍然希望在monorepo中发布包,请使用类似于“github操作”的CI,并在将某些内容合并到master/main时让构建发布脚本从那里运行

        2
  •  0
  •   LongHike    3 年前

    "dependencies": {
        "@my-module/package-one": "/username/my-module.git#v0.0.12",
    },
    

    无论如何,纱线的默认git服务器位置是github。但不知道是否检查您是否需要https或ssh访问。我使用的是ssh密钥,它立即起作用。

    但是,我必须在这里稳住我的马。

    现在我有一个问题,第一包内容的位置在哪里

    node_modules/@my-module/package-one/packages/package-one
    

    node_modules/@my-module
    

    node_modules/@my-module/package-one
    

    我为这个令人困惑的解释道歉。我希望我能用更好的方式来描述这一点。