Jgit - для данного репозитория, как мы можем определить список новых коммитов и из какой ветки приходит каждый из этих коммитов?
Я попытался получить все ветви и коммиты для каждой ветви следующим образом:
Repository repo = getRepository();
//fBranchList is a list of branches in that repository
for (String branch : fBranchList) {
ObjectId commitId = repo.resolve(branchName)
}
Этот подход имеет некоторые проблемы с производительностью. Поэтому я хочу, чтобы все коммиты находились в репозитории и соответствующей ветке (родительской ветке), где коммиты были созданы.
Другой подход, о котором я думал, заключается в следующем:
Git git = Git.open(new File("path")) ;
Iterable<RevCommit> commits = git.log().all().call();
for (RevCommit commit : commits) {
if(commit.getParentCount()>1 ){
System.out.println("LogCommit: " + commit.getName());
}
Но при таком подходе я не могу получить ветку, в которой коммит был зафиксирован впервые. Можете ли вы помочь?