mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[git] display tracking branches in format <remote>&<branch name>
This commit is contained in:
@@ -163,8 +163,27 @@ public class GitRefManager implements VcsLogRefManager {
|
||||
|
||||
VcsRef firstRef = ObjectUtils.assertNotNull(ContainerUtil.getFirstItem(firstGroup.getValue()));
|
||||
VcsRefType firstRefType = firstGroup.getKey();
|
||||
String name = firstRefType.isBranch() && !firstRefType.equals(HEAD) ? firstRef.getName() : "";
|
||||
|
||||
groups.add(new TableRefGroup(firstRefType.isBranch() && !firstRefType.equals(HEAD) ? firstRef.getName() : "", sortedReferences));
|
||||
if (firstRefType.equals(LOCAL_BRANCH)) {
|
||||
GitRepository repository = myRepositoryManager.getRepositoryForRoot(firstRef.getRoot());
|
||||
if (repository == null) {
|
||||
LOG.warn("No repository for root: " + firstRef.getRoot());
|
||||
}
|
||||
else {
|
||||
GitBranchTrackInfo trackInfo =
|
||||
ContainerUtil.find(repository.getBranchTrackInfos(), info -> info.getLocalBranch().getName().equals(firstRef.getName()));
|
||||
if (trackInfo != null) {
|
||||
VcsRef trackedRef = ContainerUtil
|
||||
.find(references, ref -> ref.getType().equals(REMOTE_BRANCH) && ref.getName().equals(trackInfo.getRemoteBranch().getName()));
|
||||
if (trackedRef != null) {
|
||||
name = trackInfo.getRemote().getName() + "&" + firstRef.getName();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
groups.add(new TableRefGroup(name, sortedReferences));
|
||||
|
||||
return groups;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user