Tob*_*ede 35 git github clojure dependency-management leiningen
是否有可能让leiningen直接从git存储库(在github上)作为依赖项拉出项目?
使用Bundler和Ruby,可以将gem映射到git repo,从而允许快速开发和集成依赖项目.
更新
根据公认的答案,现在有一个用于管理git-deps的leiningen插件:https: //github.com/tobyhede/lein-git-deps
Nin*_*Sun 22
我刚在clojurescriptone的project.clj中找到了这个
我想这对你有帮助:
:git-dependencies [["https://github.com/clojure/clojurescript.git"
"886d8dc81812962d30a741d6d05ce9d90975160f"]
["https://github.com/levand/domina.git"
"8933b2d12c44832c9bfaecf457a1bc5db251a774"]]
Run Code Online (Sandbox Code Playgroud)
该文件在这里.
Mic*_*zyk 10
Leiningen不会为你拉扯(编辑:不是开箱即用的;依照Sunng的回答引导人们发现已经为此写了一个插件 - 请参阅我对该答案的评论;结帐deps仍然是一个很好的内置解决方案),但您可以检查其他项目放在类路径上.此功能在README的FAQ部分中描述; 这是相关的问答:
问:我想并行攻击两个项目,但在它们之间切换很烦人.
答:如果您创建一个checkouts在项目根目录中调用的目录,并且符号链接其他一些项目,Leiningen将允许您并行攻击它们.这意味着依赖项的更改将在主项目中可见,而无需完成整个install/switch-projects/deps/restart-repl循环,并且副本checkouts将优先于project.clj中声明的依赖项.请注意,这不是列出项目的替代品:dependencies; 它只是为了方便补充.
您可以使用lein-voom从 GitHub 或其他 Git 存储库提取和构建项目依赖项。它的工作原理是让您使用voom特定的元数据来注释依赖向量对条目。这是自述文件中的示例:
^{:voom {:repo "https://github.com/ring-clojure/ring" :branch "1.3"}}
[ring/ring-core "1.3.0-RC1-20140519_142204-gaf0379b"]
Run Code Online (Sandbox Code Playgroud)
voom的主要用例是允许在单独的 Git 存储库中维护多个 Clojure 项目的团队轻松依赖另一个项目的一个或多个项目的当前版本,而无需不断部署开发快照版本。
我更喜欢lein-voom而不是lein-git-deps(2012 年之前接受的答案中推荐的插件),原因如下:
事实上,规范是通过元数据给出的,使得这个插件更加灵活且易于扩展。它已经有一个用于指定存储库的特定分支/标签的选项。您可以将其他键/值对添加到映射中,以进行额外的细粒度控制,而无需做太多工作。
您只需从稳定版本的依赖条目中删除元数据即可;也就是说,一旦您的依赖项从 GitHub 转移到 Clojars 中,就无需移动条目/重构您的条目project.clj。
截至撰写本文时(2017 年 11 月),lein-voom在过去几个月内进行了更新,而lein-git-deps已经停滞了 4 年。
| 归档时间: |
|
| 查看次数: |
5934 次 |
| 最近记录: |