Skip to content

Merges two branches using the squash merge strategy

Description

Merges two branches using the squash merge strategy.

Usage

codecommit_merge_branches_by_squash(repositoryName,
  sourceCommitSpecifier, destinationCommitSpecifier, targetBranch,
  conflictDetailLevel, conflictResolutionStrategy, authorName, email,
  commitMessage, keepEmptyFolders, conflictResolution)

Arguments

  • repositoryName

    [required] The name of the repository where you want to merge two branches.

  • sourceCommitSpecifier

    [required] The branch, tag, HEAD, or other fully qualified reference used to identify a commit (for example, a branch name or a full commit ID).

  • destinationCommitSpecifier

    [required] The branch, tag, HEAD, or other fully qualified reference used to identify a commit (for example, a branch name or a full commit ID).

  • targetBranch

    The branch where the merge is applied.

  • conflictDetailLevel

    The level of conflict detail to use. If unspecified, the default FILE_LEVEL is used, which returns a not-mergeable result if the same file has differences in both branches. If LINE_LEVEL is specified, a conflict is considered not mergeable if the same file in both branches has differences on the same line.

  • conflictResolutionStrategy

    Specifies which branch to use when resolving conflicts, or whether to attempt automatically merging two versions of a file. The default is NONE, which requires any conflicts to be resolved manually before the merge operation is successful.

  • authorName

    The name of the author who created the commit. This information is used as both the author and committer for the commit.

  • email

    The email address of the person merging the branches. This information is used in the commit information for the merge.

  • commitMessage

    The commit message for the merge.

  • keepEmptyFolders

    If the commit contains deletions, whether to keep a folder or folder structure if the changes leave the folders empty. If this is specified as true, a .gitkeep file is created for empty folders. The default is false.

  • conflictResolution

    If AUTOMERGE is the conflict resolution strategy, a list of inputs to use when resolving conflicts during a merge.

Value

A list with the following syntax:

list(
  commitId = "string",
  treeId = "string"
)

Request syntax

svc$merge_branches_by_squash(
  repositoryName = "string",
  sourceCommitSpecifier = "string",
  destinationCommitSpecifier = "string",
  targetBranch = "string",
  conflictDetailLevel = "FILE_LEVEL"|"LINE_LEVEL",
  conflictResolutionStrategy = "NONE"|"ACCEPT_SOURCE"|"ACCEPT_DESTINATION"|"AUTOMERGE",
  authorName = "string",
  email = "string",
  commitMessage = "string",
  keepEmptyFolders = TRUE|FALSE,
  conflictResolution = list(
    replaceContents = list(
      list(
        filePath = "string",
        replacementType = "KEEP_BASE"|"KEEP_SOURCE"|"KEEP_DESTINATION"|"USE_NEW_CONTENT",
        content = raw,
        fileMode = "EXECUTABLE"|"NORMAL"|"SYMLINK"
      )
    ),
    deleteFiles = list(
      list(
        filePath = "string"
      )
    ),
    setFileModes = list(
      list(
        filePath = "string",
        fileMode = "EXECUTABLE"|"NORMAL"|"SYMLINK"
      )
    )
  )
)