有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java JGit克隆并获取修订哈希

我正在使用下面的代码从Java克隆git repo。我需要存储克隆的最新修订哈希

localRepo = new FileRepository(path);
git = new Git(localRepo);
Git.cloneRepository().setURI(url).setBranch("master")
                .setDirectory(new File(path)).call();
git.close();

关于在这里获取修订哈希有什么线索吗


共 (1) 个答案

  1. # 1 楼答案

    您可以获得一个Ref,其中包含ObjectIdHEAD,如下所示:

            Ref head = repository.getAllRefs().get("HEAD");
            System.out.println("Ref of HEAD: " + head + ": " + head.getName() + " - " + head.getObjectId().getName());
    

    这个打印出这样的东西

    Ref of HEAD: SymbolicRef[HEAD -> refs/heads/master=f37549b02d33486714d81c753a0bf2142eddba16]: HEAD - f37549b02d33486714d81c753a0bf2142eddba16
    

    另见jgit-cookbook中的related snippet

    除了HEAD,您还可以使用类似refs/heads/master的东西来获取分支masterHEAD,即使当前签出了不同的分支