有什么方法可以根据条件过滤标签

时间:2019-06-21 08:44:19

标签: git github egit jgit

嗨,我有一个Git回购,回购内部有不同的项目,每次提交时,我都会给出一个标签名称。现在,当我尝试检索标签列表时,将使用以下代码获取与该存储库相对应的所有标签名称。

FileRepositoryBuilder repositoryBuilder = new FileRepositoryBuilder();
    repositoryBuilder.addCeilingDirectory(new File("D:\\TestRepo"));
repositoryBuilder.findGitDir(new File("D:\\TestRepo\\.git"));
Repository repo = repositoryBuilder.build();

List<String> tagList = new ArrayList<String>();
Map<String, Ref> tags = repo.getTags();
for (Map.Entry<String, Ref> entry : tags.entrySet()) {
     tagList.add(entry.getKey());
}

TestRepo是我的Git存储库,在其中,我有不同的项目,例如Proj1,Proj2,Proj3。

我分别提交了两次ID为P1v1.1和P1v1.2的Proj1,以及两次为ID P2v1.1和Proj3的ID为P3v1.1的Proj2。

使用上面的代码,我得到所有的标签ID,如下所示 [P1v1.1,P1v1.2,P2v1.1,P3v1.1]

但是我想获取特定于项目的标签ID。有没有什么办法可以根据搜索条件获取标签ID,例如如果我想要Proj1,那么它应该只提供[P1v1.1,P1v1.2]

0 个答案:

没有答案