I am trying to get list of commits during a specfic period and trying to get the list of files in each commit . Tried below code
gitRepo = Git.cloneRepository().setURI("****").setCredentialsProvider(
new UsernamePasswordCredentialsProvider("PRIVATE-TOKEN", "***")).setDirectory(new File("test")).setNoCheckout(true).call();
ObjectId masterId = gitRepo.getRepository().exactRef("refs/remotes/origin/master").getObjectId();
Date since = new SimpleDateFormat("yyyy-MM-dd").parse("2021-12-08");
Date until = new SimpleDateFormat("yyyy-MM-dd").parse("2021-12-10");
RevFilter between = CommitTimeRevFilter.between(since, until);
for (RevCommit commit : gitRepo.log().add(masterId).setRevFilter(between).call()) {
System.out.println( "* "
+ commit.getId().getName()
+ " "
+ commit.getShortMessage()
+ " "
+ commit.getAuthorIdent().getName());
ObjectId lastCommitId = gitRepo.getRepository().resolve(commit.getId().getName());
RevTree tree = commit.getTree();
TreeWalk treeWalk = new TreeWalk(gitRepo.getRepository());
treeWalk.addTree(tree);
treeWalk.setRecursive(false);
while(treeWalk.next()){
System.out.println("File Name = "+treeWalk.getPathString());
}
}
Its getting all files in the repo instead of the files changed as part of the specific commit I am passing in last commit . Not sure what I am missing ?