mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IJI-1504 show my last safe-push action
GitOrigin-RevId: 2ec1e861aea264824b158ae18ff81fb0e604a39d
This commit is contained in:
committed by
intellij-monorepo-bot
parent
2bd4dbc285
commit
21bbfdc1d3
@@ -44,7 +44,6 @@ import org.jetbrains.annotations.CalledInAny;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.nio.file.Path;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
@@ -155,7 +154,7 @@ public final class GitBranchIncomingOutgoingManager implements GitRepositoryChan
|
||||
if (myConnection == null) {
|
||||
myConnection = myProject.getMessageBus().connect(this);
|
||||
myConnection.subscribe(GitRepository.GIT_REPO_CHANGE, this);
|
||||
myConnection.subscribe(GitAuthenticationListener.GIT_AUTHENTICATION_SUCCESS, this);
|
||||
myConnection.subscribe(GIT_AUTHENTICATION_SUCCESS, this);
|
||||
}
|
||||
updateBranchesWithOutgoing();
|
||||
updateIncomingScheduling();
|
||||
@@ -367,7 +366,7 @@ public final class GitBranchIncomingOutgoingManager implements GitRepositoryChan
|
||||
GitCommandResult lsRemoteResult =
|
||||
Git.getInstance().runCommand(() -> createLsRemoteHandler(repository, remote, params, authenticationMode));
|
||||
if (lsRemoteResult.success()) {
|
||||
Map<String, String> hashWithNameMap = ContainerUtil.map2MapNotNull(lsRemoteResult.getOutput(), GitRefUtil::parseRefsLine);
|
||||
Map<String, String> hashWithNameMap = ContainerUtil.map2MapNotNull(lsRemoteResult.getOutput(), GitRefUtil::parseBranchesLine);
|
||||
result.putAll(getResolvedHashes(hashWithNameMap));
|
||||
myErrorMap.remove(repository, remote);
|
||||
myAuthSuccessMap.putValue(repository, remote);
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.intellij.openapi.util.Pair;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.vcs.log.Hash;
|
||||
import com.intellij.vcs.log.impl.HashImpl;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jetbrains.annotations.Contract;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@@ -31,6 +32,23 @@ public final class GitRefUtil {
|
||||
return branchName;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return only branches
|
||||
* @see #parseRefsLine
|
||||
*/
|
||||
@ApiStatus.Internal
|
||||
public static @Nullable Pair<String, String> parseBranchesLine(@NotNull String line) {
|
||||
var parsedRef = parseRefsLine(line);
|
||||
if (parsedRef == null) {
|
||||
return null;
|
||||
}
|
||||
var branch = parsedRef.first;
|
||||
if (!branch.startsWith(REFS_HEADS_PREFIX) && !branch.startsWith(REFS_REMOTES_PREFIX)) {
|
||||
return null;
|
||||
}
|
||||
return parsedRef;
|
||||
}
|
||||
|
||||
/**
|
||||
* Parses a line with a pair of hash and ref name e.g. see the .git/packed-refs file.
|
||||
* Comments and tags are ignored, and null is returned.
|
||||
@@ -76,7 +94,7 @@ public final class GitRefUtil {
|
||||
branch = line.substring(start, i);
|
||||
}
|
||||
|
||||
if (branch == null || !branch.startsWith(REFS_HEADS_PREFIX) && !branch.startsWith(REFS_REMOTES_PREFIX)) {
|
||||
if (branch == null) {
|
||||
return null;
|
||||
}
|
||||
return Pair.create(branch, hash.trim());
|
||||
|
||||
@@ -151,7 +151,7 @@ public class GitRepositoryReader {
|
||||
|
||||
private @Nullable GitLocalBranch findCurrentBranch(@NotNull HeadInfo headInfo,
|
||||
@NotNull Repository.State state,
|
||||
@NotNull Set<? extends GitLocalBranch> localBranches) {
|
||||
@NotNull Set<GitLocalBranch> localBranches) {
|
||||
final String currentBranchName = findCurrentBranchName(state, headInfo);
|
||||
if (currentBranchName == null) {
|
||||
return null;
|
||||
@@ -224,7 +224,7 @@ public class GitRepositoryReader {
|
||||
}
|
||||
try {
|
||||
String content = DvcsUtil.tryLoadFile(myPackedRefsFile, CharsetToolkit.UTF8);
|
||||
return ContainerUtil.map2MapNotNull(LineTokenizer.tokenize(content, false), GitRefUtil::parseRefsLine);
|
||||
return ContainerUtil.map2MapNotNull(LineTokenizer.tokenize(content, false), GitRefUtil::parseBranchesLine);
|
||||
}
|
||||
catch (RepoStateException e) {
|
||||
return emptyMap();
|
||||
|
||||
Reference in New Issue
Block a user