我知道 JGit 对 git 子模块的支持是有限的,但我仍然想知道我该如何实现:
git submodule foreach git checkout <branchName>
以及使用 JGit 的类似命令。
或者还有其他更好的基于 Java 的 Git API 吗?
最佳答案
在 JGit 中有一个 SubmoduleWalk
可能有助于解决您的问题。要在所有子模块上运行 checkout 命令,您可以按照以下几行编写一些内容:
try (SubmoduleWalk walk = SubmoduleWalk.forIndex(repository)) {
while(walk.next()) {
try (Repository submoduleRepository = walk.getRepository()) {
Git.wrap(submoduleRepository).checkout().call();
}
}
}
关于git - JGit:git submodule foreach 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21327257/