我想知道如何才能用jgit列出一个远程Git repo的所有分支,而不克隆它。
在浏览jgit的javadoc时,我发现了ListBranchCommand,但它似乎只适用于一个已经打开的Repository对象,但我无法找到如何通过HTTP创建一个Repository对象而不将其克隆到本地。
有可能吗?谢谢
我想知道如何才能用jgit列出一个远程Git repo的所有分支,而不克隆它。
在浏览jgit的javadoc时,我发现了ListBranchCommand,但它似乎只适用于一个已经打开的Repository对象,但我无法找到如何通过HTTP创建一个Repository对象而不将其克隆到本地。
有可能吗?谢谢
2条答案
按热度按时间pjngdqdw1#
LsRemoteCommand
列出了远程存储库的分支。或
静态创建的
LsRemoteCommand
有其局限性,对于某些传输协议,需要本地存储库来获取配置设置,因此我通常使用Git.init()
创建一个空的临时本地存储库,然后使用第一种方法。如果你想避免创建额外的存储库,你可以用
Transport.open()
测试,如果没有存储库也能成功,否则会抛出一个NotSupportedException
。mkshixfv2#
好吧,没关系,经过几个小时的寻找答案,我发现它的权利之前,问它在那里...
答案就在CookBook中: