< prev index next >

vcs/src/main/java/org/openjdk/skara/vcs/git/GitRepository.java

Print this page

1048             cmd.add(refspec);
1049         }
1050         try (var p = capture(cmd)) {
1051             await(p);
1052         }
1053     }
1054 
1055     @Override
1056     public boolean contains(Branch b, Hash h) throws IOException {
1057         try (var p = capture("git", "for-each-ref", "--contains", h.hex(), "--format", "%(refname:short)")) {
1058             var res = await(p);
1059             for (var line : res.stdout()) {
1060                 if (line.equals(b.name())) {
1061                     return true;
1062                 }
1063             }
1064         }
1065 
1066         return false;
1067     }
























1068 }

1048             cmd.add(refspec);
1049         }
1050         try (var p = capture(cmd)) {
1051             await(p);
1052         }
1053     }
1054 
1055     @Override
1056     public boolean contains(Branch b, Hash h) throws IOException {
1057         try (var p = capture("git", "for-each-ref", "--contains", h.hex(), "--format", "%(refname:short)")) {
1058             var res = await(p);
1059             for (var line : res.stdout()) {
1060                 if (line.equals(b.name())) {
1061                     return true;
1062                 }
1063             }
1064         }
1065 
1066         return false;
1067     }
1068 
1069     @Override
1070     public List<Reference> remoteBranches(String remote) throws IOException {
1071         var refs = new ArrayList<Reference>();
1072         try (var p = capture("git", "ls-remote", "--heads", "--refs", remote)) {
1073             for (var line : await(p).stdout()) {
1074                 var parts = line.split("\t");
1075                 var name = parts[1].replace("refs/heads/", "");
1076                 refs.add(new Reference(name, new Hash(parts[0])));
1077             }
1078         }
1079         return refs;
1080     }
1081 
1082     @Override
1083     public List<String> remotes() throws IOException {
1084         var remotes = new ArrayList<String>();
1085         try (var p = capture("git", "remote")) {
1086             for (var line : await(p).stdout()) {
1087                 remotes.add(line);
1088             }
1089         }
1090         return remotes;
1091     }
1092 }
< prev index next >