java - 使用 JGit 获取所有分支

标签 java git github jgit

如何使用 JGit 获取存储库中的所有分支? 让我们采取example repository .正如我们所见,它有 5 个分支。
Here我找到了这个例子:

int c = 0;
List<Ref> call = new Git(repository).branchList().call();
for (Ref ref : call) {
    System.out.println("Branch: " + ref + " " + ref.getName() + " "
            + ref.getObjectId().getName());
    c++;
}
System.out.println("Number of branches: " + c);

但我得到的只是这个:

Branch: Ref[refs/heads/master=d766675da9e6bf72f09f320a92b48fa529ffefdc] refs/heads/master d766675da9e6bf72f09f320a92b48fa529ffefdc
Number of branches: 1
Branch: master

最佳答案

如果您缺少的是远程分支,则必须将 ListBranchCommandListMode 设置为 ALL远程。默认情况下,该命令仅返回本地分支。

new Git(repository).branchList().setListMode(ListMode.ALL).call();

关于java - 使用 JGit 获取所有分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24518782/

相关文章:

git - 我可以在git中分离一个项目吗?

git - 阻止用户推送到公共(public)存储库 GitHub

github - 如何从 GitHub 草稿下载文件

java - 如何仅使用 "switch and if"这样的输入 "January "或 "janUARY"在 Java 解决方案中创建

java - Jooq 查询问题与案例

git - HEAD :master and HEAD? 和有什么区别

多项目团队的 Git 组织

git - 我如何让 github 将 PR 与特定的电子邮件/用户信息 merge ?

java - QueryDSL:如何从 case 表达式创建谓词?

java - 运行时应用程序 self 保护 (RASP)