JGit

Getting commits between annotated tags with JGit

JGit does not support getting commits between annotated tags (or any revision and an annotated tag) as you might expect. Following code will work perfectly with commit hashs and branch identifiers: public Iterable<RevCommit> getJGitLogBetween(final String rev1, final String rev2) throws IOException, GitAPIException { Ref refFrom = repo.getRef(rev1); Ref refTo = repo.getRef(rev2); return new Git(repo).log().addRange(refFrom.getObjectId(), refTo.getObjectId()).call(); } Calling this with an annotated tag (as the maven release plugin is creating, for example): @Test public void testGetGitLogBetweenAnnotatedTagAndHead() throws Exception { Repository repository…

Keep reading