【问题标题】:Dart package dependency to subdirectory of git repoDart 包依赖于 git repo 的子目录
【发布时间】:2014-08-20 21:07:19
【问题描述】:

我在一个 git 存储库中有几个小型 dart 演示项目。因此,每个项目都在存储库的子文件夹中,并且每个项目的 yaml 文件都在相应的文件夹中,而不是在 repo 的根目录下。有没有办法在 git repo 中指定对此类子文件夹的 git 依赖项?我知道我可以手动克隆存储库并在依赖项规范中使用文件路径。但我正在寻找的是一种在子目录中为该包提供直接 git url 的方法。这可能吗?

【问题讨论】:

  • 您是否尝试将目录名称添加到 URL 中? git: url: git://github.com/munificent/kittens.git/somedir 文档只提到 ref: some-branch(引用可以是 Git 允许识别提交的任何内容)请参阅 dartlang.org/tools/pub/dependencies.html#git-packages
  • 这个不行,因为pub先触发了一个git clone,但是附加目录的url没有引用一个有效的git仓库,所以clone失败了。
  • 我想你应该提出一个功能请求 dartbug.com/new
  • 我创建了一个功能请求。见code.google.com/p/dart/issues/detail?id=19797

标签: git dart dart-pub


【解决方案1】:

几年过去了,增加了对此的支持:

https://github.com/dart-lang/pub/pull/1650

您现在可以将git 依赖项拆分为urlpath

dependencies:
  protobuf:
    git:
      url: git://github.com/dart-lang/protobuf.git
      path: protobuf

延伸阅读:https://dart.dev/tools/pub/dependencies#git-packages

【讨论】:

    【解决方案2】:

    这是我从开发团队得到的答案:

    “这不是我们计划支持的。repos 应该与包一一对应,并且包应该位于 repos 的顶层。”

    这使得在 git 存储库中使用包的依赖项变得困难,因为 Eclipse 总是使用项目根目录作为存储库中的子文件夹。

    【讨论】:

    • 这现在是可能的 - 看我的回答:-)
    猜你喜欢
    • 2012-04-08
    • 1970-01-01
    • 2012-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-20
    • 1970-01-01
    • 2012-12-26
    相关资源
    最近更新 更多