列出一个git远程仓库的分支而不克隆它
我想知道怎么可能用jgit列出远程Git仓库的所有分支但没有克隆它。
在浏览jgit的javadoc时,我发现了ListBranchCommand,但它似乎只适用于已经打开的Repository对象。 但我无法找到如何通过HTTP创建Repository对象而不在本地克隆它。
可能吗 ? 谢谢
LsRemoteCommand
用于列出远程存储库的分支。 要获取该命令,请使用其中一个
Git.wrap( repo ).lsRemote()
要么
Git.lsRemoteRepository()
静态创建的LsRemoteCommand
有其局限性。 对于某些传输协议,需要本地存储库来获取配置设置。 因此,我通常使用Git.init()
创建一个空的临时本地存储库,然后使用第一种方法。
如果要避免创建额外的存储库,可以使用Transport.open()
进行测试,如果它没有存储库则成功。 否则会抛出NotSupportedException
。
好吧,没关系,经过几个小时寻找答案后,我发现它就在那里问它之前……
所以,答案在CookBook中 :
Collection refs = Git.lsRemoteRepository() .setHeads(true) .setTags(true) .setRemote(REMOTE_URL) .call();
- 用于检查IPv4或IPv6地址是否在给定子网中的Java库
- 多生产者多消费者multithreadingJava
- 如何编辑此方法以使用javacv绘制多边形?
- 在Eclipse中的Java EE透视图中的包呈现
- 如何手动在Eclipse中配置Glassfish Server
- 如何在Java中绘制一个像样的圆圈
- 如何在Jersey 2中修改QueryParam和PathParam
- java.lang.ClassNotFoundException:org.springframework.web.context.request.RequestContextListener
- 将Primitive int数组转换为list