GitUpdater (@NotNull Project project, @NotNull Git git, @NotNull GitBranchPair trackedBranches, @NotNull GitRepository repository, @NotNull ProgressIndicator progressIndicator, @NotNull UpdatedFiles updatedFiles, @NotNull UpdateMethod updateMethod) { if (updateMethod == UpdateMethod.BRANCH_DEFAULT) { updateMethod = resolveUpdateMethod(repository); } return updateMethod == UpdateMethod.REBASE ? new GitRebaseUpdater(project, git, repository, trackedBranches, progressIndicator, updatedFiles): new GitMergeUpdater(project, git, repository, trackedBranches, progressIndicator, updatedFiles); }