列出分支的所有提交,因为它是使用 JGit 从 master 创建的

List all commits of a branch since it was created from master with JGit

我正在尝试使用 JGit 来获取特定于分支的提交日志,因为它已创建。我在论坛上发现了几篇听起来像是在描述这一点的帖子,但它们似乎都 return 提交给分支和之前的所有内容。

我基本上想用 JGit

模拟这个 git 命令
git log master..testBranch

这正是我想要的。

以下代码片段应该执行此操作,它向后遍历分支 testBranch,直到提交 master

我也已将此添加到我的 jgit-cookbook

中的示例片段中
        try (Git git = new Git(repository)) {
            Iterable<RevCommit> logs = git.log()
                    .not(repository.resolve("master"))
                    .add(repository.resolve("remotes/origin/testBranch"))
                    .call();
            count = 0;
            for (RevCommit rev : logs) {
                System.out.println("Commit: " + rev /* + ", name: " + rev.getName() + ", id: " + rev.getId().getName() */);
                count++;
            }
            System.out.println("Had " + count + " commits only on test-branch");
        }