Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/decorators/DecoratableResourceHelper.java')
-rw-r--r--org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/decorators/DecoratableResourceHelper.java18
1 files changed, 18 insertions, 0 deletions
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/decorators/DecoratableResourceHelper.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/decorators/DecoratableResourceHelper.java
index b8984a59fa..855dcf2fde 100644
--- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/decorators/DecoratableResourceHelper.java
+++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/decorators/DecoratableResourceHelper.java
@@ -14,6 +14,8 @@ import java.io.IOException;
import org.eclipse.egit.ui.Activator;
import org.eclipse.egit.ui.UIText;
+import org.eclipse.egit.ui.internal.GitLabelProvider;
+import org.eclipse.jgit.lib.BranchTrackingStatus;
import org.eclipse.jgit.lib.Constants;
import org.eclipse.jgit.lib.Ref;
import org.eclipse.jgit.lib.Repository;
@@ -56,4 +58,20 @@ public class DecoratableResourceHelper {
return repository.getBranch();
}
+
+ static String getBranchStatus(Repository repo) throws IOException {
+ String branchName = repo.getBranch();
+ if (branchName == null)
+ return null;
+
+ BranchTrackingStatus status = BranchTrackingStatus.of(repo, branchName);
+ if (status == null)
+ return null;
+
+ if (status.getAheadCount() == 0 && status.getBehindCount() == 0)
+ return null;
+
+ String formattedStatus = GitLabelProvider.formatBranchTrackingStatus(status);
+ return formattedStatus;
+ }
}

Back to the top