void (@NotNull ProgressIndicator indicator) { String token = GHCompatibilityUtil.getOrRequestToken(myAccount, myProject); if (token == null) return; GithubApiRequestExecutor executor = GithubApiRequestExecutor.Factory.getInstance().create(token); myRepository.update(); GithubRepo parentRepo = validateRepoAndLoadParent(executor, indicator); if (parentRepo == null) return; GitRemote parentRemote = configureParentRemote(indicator, parentRepo.getFullPath()); if (parentRemote == null) return; String branchName = parentRepo.getDefaultBranch(); if (branchName == null) { GithubNotifications.showError(myProject, GithubNotificationIdsHolder.REBASE_REPO_NOT_FOUND, GithubBundle.message("rebase.error"), GithubBundle.message("rebase.error.no.default.branch")); return; } if (!fetchParent(indicator, parentRemote)) { return; } rebaseCurrentBranch(indicator, parentRemote, branchName); }