boolean (final @NotNull VirtualFile root, boolean skip) { LOG.info(String.format("continueRebase in %s, skip: %s", root, skip)); final GitLineHandler rh = new GitLineHandler(myProject, root, GitCommand.REBASE); rh.setStdoutSuppressed(false); rh.addParameters(skip ? "--skip" : "--continue"); final GitRebaseProblemDetector rebaseConflictDetector = new GitRebaseProblemDetector(); rh.addLineListener(rebaseConflictDetector); rh.addLineListener(GitStandardProgressAnalyzer.createListener(myProgressIndicator)); // TODO If interactive rebase with commit rewording was invoked, this should take the reworded message GitRebaser.TrivialEditor editor = new GitRebaser.TrivialEditor(); try (GitHandlerRebaseEditorManager ignored = GitHandlerRebaseEditorManager.prepareEditor(rh, editor)) { String oldText = myProgressIndicator.getText(); myProgressIndicator.setText(GitBundle.message("rebase.progress.indicator.title")); GitCommandResult result = myGit.runCommand(rh); myProgressIndicator.setText(oldText); if (result.success()) return true; return handleRebaseContinueFailure(root, result, rebaseConflictDetector); } catch (ProcessCanceledException pce) { return false; } }