gpt4 book ai didi

jgit - 如何使用 JGit 确定哪些分支已合并到 master?

转载 作者:行者123 更新时间:2023-12-03 21:34:52 25 4
gpt4 key购买 nike

如何使用 JGit 确定哪些分支已合并到 master?

我想做相当于普通的 git 命令:

git branch -a --merged

这在 JGit 中可能吗?

最佳答案

RevWalk::isMergedInto()可用于确定一个提交是否合并到另一个提交中。即,isMergedInto如果第一个参数中给出的提交是第二个给定提交的祖先,则返回 true。

try (RevWalk revWalk = new RevWalk(repository)) {
RevCommit masterHead = revWalk.parseCommit(repository.resolve("refs/heads/master");
RevCommit otherHead = revWalk.parseCommit( repository.resolve("refs/heads/other-branch");
if (revWalk.isMergedInto(otherHead, masterHead)) {
...
}
}

要获取所有分支的列表 ListBranchesCommand用来:

List<Ref> branches = Git.wrap(repository).listBranches().setListMode(ListMode.ALL).call();

关于jgit - 如何使用 JGit 确定哪些分支已合并到 master?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26644919/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com