我正在尝试使用JGit来获取特定于分支的提交日志,因为它已创建。我在论坛中发现了几个听起来像是在描述这个帖子的帖子,但他们似乎都回到了对分支的提交和之前的一切。
我基本上想用JGit模拟这个git命令
git log master..testBranch
完全符合我的要求。
答案 0 :(得分:1)
以下代码段应该执行此操作,它会向后移动分支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");
}