Interface MergingVcsWorkingCopyManager

All Superinterfaces:
VcsWorkingCopyManager
All Known Implementing Classes:
BitbucketCloudWorkingCopyManager, BitbucketServerWorkingCopyManager, GitHubWorkingCopyManager, GitWorkingCopyManager, LegacyFixedDirectoryWorkingCopyManager, LegacyWorkingCopyManager

public interface MergingVcsWorkingCopyManager extends VcsWorkingCopyManager
VcsWorkingCopyManager that can do merges.
Since:
5.14
  • Method Details

    • canDoMerge

      @Deprecated default boolean canDoMerge()
      Deprecated.
      since 7.1 without replacement. Should be always true.
      Returns:
      true if merges are possible (i.e. required capabilities are present)
    • getMergingRequirements

      @NotNull @Deprecated default @NotNull Set<Requirement> getMergingRequirements()
      Deprecated.
      since 7.1 without replacement, it's not used anywhere
      If executing merge imposes capability requirements on top of those returned by VcsExecutorWithRequirements#getRequirements(), return them here.
    • checkoutAndMerge

      @NotNull @NotNull VcsWorkingCopy checkoutAndMerge(@NotNull @NotNull CommonContext commonContext, @NotNull @NotNull VcsRepositoryData vcsRepositoryData, @NotNull @NotNull VcsBranch targetBranch, @NotNull @NotNull PlanVcsRevisionData revisionOnTarget, @NotNull @NotNull VcsBranch sourceBranch, @NotNull @NotNull PlanVcsRevisionData sourceRevision, @NotNull @NotNull File targetPath) throws RepositoryException
      Checks out the targetBranch and merges sourceBranch to it. Depending on the vcs type, this can create local commit.
      Parameters:
      vcsRepositoryData - configuration of the repository. Note that the following parameters override branch stored in repository data.
      targetBranch - - target branch (branch to checkout and merge to)
      revisionOnTarget - - revision to checkout and merge to
      sourceBranch - - branch to merge from
      sourceRevision - - revision to merge from
      targetPath - - workings copy's path
      Returns:
      state of the working copy, including new revision if applicable
      Throws:
      RepositoryException