From cd69dd962fd8de715bfbd07bccd619281bc9bfeb Mon Sep 17 00:00:00 2001 From: Kirill Likhodedov Date: Sun, 23 Jun 2019 11:28:27 +0100 Subject: [PATCH] git: show an error if tag creation fails: IDEA-216783 GitOrigin-RevId: e862ac490dc84e1cc65161ccaa52414d9daa9f42 --- .../src/git4idea/branch/GitBranchWorker.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/plugins/git4idea/src/git4idea/branch/GitBranchWorker.java b/plugins/git4idea/src/git4idea/branch/GitBranchWorker.java index ecbb4d93bf70..b18ab9072919 100644 --- a/plugins/git4idea/src/git4idea/branch/GitBranchWorker.java +++ b/plugins/git4idea/src/git4idea/branch/GitBranchWorker.java @@ -19,12 +19,15 @@ import com.intellij.dvcs.repo.Repository; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.project.Project; import com.intellij.openapi.vcs.VcsException; +import com.intellij.openapi.vcs.VcsNotifier; import com.intellij.openapi.vcs.changes.Change; import com.intellij.util.containers.ContainerUtil; import git4idea.GitLocalBranch; +import git4idea.GitUtil; import git4idea.GitVcs; import git4idea.changes.GitChangeUtils; import git4idea.commands.Git; +import git4idea.commands.GitCommandResult; import git4idea.rebase.GitRebaseUtils; import git4idea.repo.GitRepository; import org.jetbrains.annotations.NotNull; @@ -73,10 +76,15 @@ public final class GitBranchWorker { new GitCreateBranchOperation(myProject, myGit, myUiHandler, name, startPoints).execute(); } - public void createNewTag(@NotNull final String name, @NotNull final String reference, @NotNull final List repositories) { + public void createNewTag(@NotNull String name, @NotNull String reference, @NotNull List repositories) { for (GitRepository repository : repositories) { - myGit.createNewTag(repository, name, null, reference); + GitCommandResult result = myGit.createNewTag(repository, name, null, reference); repository.getRepositoryFiles().refreshTagsFiles(); + if (!result.success()) { + VcsNotifier.getInstance(myProject).notifyError("Couldn't create tag " + name + GitUtil.mention(repository), + result.getErrorOutputAsHtmlString()); + break; + } } }