栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在JGit中编写git log --stat命令

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在JGit中编写git log --stat命令

要访问存储库的历史记录,JGit提供了

RevWalk
。它的
markStart()
方法用于指定历史记录应从哪个提交开始。存储库中的所有引用都可以通过获取
Repository::getAllRefs()

一旦一个

RevWalk
实例设置,使用它的迭代器或它的
next()
方法来遍历的历史。

放在一起看起来像这样:

try (RevWalk revWalk = new RevWalk(repository)) {  for (Ref ref : repository.getAllRefs().values()) {    revWalk.markStart(revWalk.parseCommit(ref.getObjectId()));  }  for (RevCommit commit : revWalk) {    // print commit metadata and diff  }}

请注意,

RevWalk
调用的实例
parseCommit()
必须与调用的实例相同
markStart()
。否则,
RevWalk
将会产生有趣的结果。

提交(并由此访问其父项)后,您可以使用

DiffFormatter
来获取
Diff
s和
Edit
s
的列表,这些列表可以告诉您更改了多少个文件和每个文件行。

您可能需要看一下这篇文章才能开始:如何使用JGit显示两次提交之间的更改

这里是一篇文章,深入介绍了JGit的diff API:http://www.preaffine.com/2016/06/16/jgit-
diff/



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/574415.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号