我想知道如何用jgit列出远程Git存储库的所有分支,而不克隆它。

在遍历jgit的javadoc时,我发现了ListBranchCommand,但这似乎只适用于已经打开的Repository对象。但是我无法找到如何通过HTTP创建存储库对象而不将其克隆到本地的方法。

可能吗 ?
谢谢

最佳答案

LsRemoteCommand列出了远程存储库的分支。要获取命令,请使用

Git.wrap( repo ).lsRemote()

或者
Git.lsRemoteRepository()

静态创建的LsRemoteCommand有其局限性。对于某些传输协议(protocol),必须有本地存储库才能获取配置设置。因此,我通常使用Git.init()创建一个空的临时本地存储库,然后使用第一种方法。

如果要避免创建额外的存储库,则可以在没有存储库的情况下使用Transport.open()测试是否成功。否则抛出NotSupportedException

关于java - 列出git远程仓库的分支而不克隆它,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22631261/

10-14 15:41
查看更多