繁体   English   中英

Jgit - 从分支获取所有提交

[英]Jgit - Get All commits from branch

伙计们,美好的一天,我对 Jgit 有一些问题,我尝试从分支获取所有提交 - 但 Jgit 跳过了一半的提交

提交:EET 2019 年 11 月 26 日星期二 15:26:19 EET 2019 年 11 月 26 日星期二 14:28:01 EET 提交:EET 2019 年 11 月 13 日星期三 15:44:40 EET 2019 年 11 月 12 日星期二 16:27:27

我在 11 月 26 日到 13 日之间有很大范围的提交

这是我的代码

 RevWalk walk = new RevWalk(repo);
 walk.markStart(walk.parseCommit(repo.resolve(Constants.HEAD)));
 walk.sort(RevSort.TOPO);// chronological order
 walk.setRevFilter(RevFilter.ALL);

 for(RevCommit commit : walk ) {
  System.out.println(commit.getAuthorIdent().getWhen());
}

如果我们检查 gitLab - 跳过之前的最后一次提交是 11 月 26 日,该提交开发人员将“当前分支”合并到“某个测试分支”中

在那次提交之后,我们有一个很大的跳跃,我希望你们中的一些人已经遇到了这个问题并且可以帮助我)

jgit-cookbook 中查看此代码段,基本上您可以使用“Log”命令来实现此目的:

        try (Git git = new Git(repository)) {
            ObjectId branchId = repository.resolve("somebranch");
            Iterable<RevCommit> commits = git.log().add(branchId).call();
            int count = 0;
            for (RevCommit commit : commits) {
                System.out.println("LogCommit: " + commit);
                count++;
            }
        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM