在sbt中,如何在本地git存储库的分支上创建源依赖项?

时间:2014-03-08 20:51:52

标签: scala sbt

sbt为源依赖项目提供了以下语法:

RootProject(file("/a/b/c"))
RootProject(uri("git://github.com/a/b/c#some-branch"))

但我找不到任何方法从本地git存储库克隆,这不需要像运行git服务器那样荒谬。我想表达以下内容,或道德等同物 - 道德等同意味着它不应该要求ssh或工作DNS或git服务器甚至是“localhost”的工作解决方案,也不应该引入任何形式的毫无意义的构建脆弱性。 (手动检查所需的分支到另一个工作目录并指向sbt就是一个毫无意义的构建脆弱性的例子。)

RootProject(file("/a/b/c#some-branch"))
// This seems like the most plausible syntax,
// but it explodes during cloning - "ssh: Could not resolve hostname git"
RootProject(uri("git:/a/b/c#some-branch"))

1 个答案:

答案 0 :(得分:2)

第二次尝试非常接近,假设commit是您要使用的提交的SHA1,并且您将回购克隆克隆到/a/b/c

RootProject(uri(s"git:file:///a/b/c/#$commit"))