嗨,我有一个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]