如何在jgit中创建一个null分支

时间:2014-06-13 03:34:57

标签: git jgit

现在我得到一个临时git非裸存储库。我想保留一个空的最后一个分支。我该怎么办?

我使用clone来获取非裸存储库:

git = Git.cloneRepository().setURI(repository.getDirectory().getAbsolutePath()).setDirectory(file)
                .setNoCheckout(true).call();

我试着这样:

git.checkout().setName(FINAL_TEMP_BRANCH).setCreateBranch(true).call();

但我得到了例外:

org.eclipse.jgit.api.errors.RefNotFoundException: Ref HEAD can not be resolved

我只想创建一个空的FINAL_TEMP_BRANCH。我该怎么办?

1 个答案:

答案 0 :(得分:1)

当调用git clone命令时,它会自动创建一个“master”分支。但现在头脑无所事事。所以我们应该提交一些东西然后头部将指向最新的提交。我们可以这样做:

git = Git.cloneRepository().setURI(repository.getDirectory().getAbsolutePath()).setDirectory(file)
                .setNoCheckout(true).call();
        git.commit().setMessage("Initial commit").call();
        git.branchCreate().setName(FINAL_TEMP_BRANCH).call();

现在git存储库有两个分支:master和FINAL_TEMP_BRANCH。它们都是空的。