From ab7197571f317f8a4a5c257d1e79e4146fd9c697 Mon Sep 17 00:00:00 2001 From: Kirill Likhodedov Date: Tue, 1 Dec 2015 13:45:38 +0300 Subject: [PATCH] IDEA-148585 LOG.info commits to be cherry-picked To make sure they are applied in the correct order. --- .../git4idea/cherrypick/GitCherryPicker.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/plugins/git4idea/src/git4idea/cherrypick/GitCherryPicker.java b/plugins/git4idea/src/git4idea/cherrypick/GitCherryPicker.java index 35e76de5dfd2..594735134dec 100644 --- a/plugins/git4idea/src/git4idea/cherrypick/GitCherryPicker.java +++ b/plugins/git4idea/src/git4idea/cherrypick/GitCherryPicker.java @@ -65,6 +65,7 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicReference; +import static com.intellij.dvcs.DvcsUtil.getShortRepositoryName; import static com.intellij.openapi.util.text.StringUtil.pluralize; import static git4idea.commands.GitSimpleEventDetector.Event.CHERRY_PICK_CONFLICT; import static git4idea.commands.GitSimpleEventDetector.Event.LOCAL_CHANGES_OVERWRITTEN_BY_CHERRY_PICK; @@ -94,6 +95,7 @@ public class GitCherryPicker extends VcsCherryPicker { public void cherryPick(@NotNull List commits) { Map> commitsInRoots = DvcsUtil.groupCommitsByRoots(myPlatformFacade.getRepositoryManager(myProject), commits); + LOG.info("Cherry-picking commits: " + toString(commitsInRoots)); List successfulCommits = ContainerUtil.newArrayList(); List alreadyPicked = ContainerUtil.newArrayList(); AccessToken token = DvcsUtil.workingTreeChangeStarted(myProject); @@ -113,6 +115,22 @@ public class GitCherryPicker extends VcsCherryPicker { } } + @NotNull + private static String toString(@NotNull final Map> commitsInRoots) { + return StringUtil.join(commitsInRoots.keySet(), new Function() { + @Override + public String fun(@NotNull GitRepository repository) { + String commits = StringUtil.join(commitsInRoots.get(repository), new Function() { + @Override + public String fun(VcsFullCommitDetails details) { + return details.getId().asString(); + } + }, ", "); + return getShortRepositoryName(repository) + ": [" + commits + "]"; + } + }, "; "); + } + // return true to continue with other roots, false to break execution private boolean cherryPick(@NotNull GitRepository repository, @NotNull List commits, @NotNull List successfulCommits, @NotNull List alreadyPicked) {