Table Of Contents

Feedback

User Guide

First time using the AWS CLI? See the User Guide for help getting started.

[ aws . codecommit ]

merge-branches-by-squash

Description

Merges two branches using the squash merge strategy.

See also: AWS API Documentation

See 'aws help' for descriptions of global parameters.

Synopsis

  merge-branches-by-squash
--repository-name <value>
--source-commit-specifier <value>
--destination-commit-specifier <value>
[--target-branch <value>]
[--conflict-detail-level <value>]
[--conflict-resolution-strategy <value>]
[--author-name <value>]
[--email <value>]
[--commit-message <value>]
[--keep-empty-folders | --no-keep-empty-folders]
[--conflict-resolution <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]

Options

--repository-name (string)

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

--source-commit-specifier (string)

The branch, tag, HEAD, or other fully qualified reference used to identify a commit. For example, a branch name or a full commit ID.

--destination-commit-specifier (string)

The branch, tag, HEAD, or other fully qualified reference used to identify a commit. For example, a branch name or a full commit ID.

--target-branch (string)

The branch where the merge will be applied.

--conflict-detail-level (string)

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

Possible values:

  • FILE_LEVEL
  • LINE_LEVEL

--conflict-resolution-strategy (string)

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 will be successful.

Possible values:

  • NONE
  • ACCEPT_SOURCE
  • ACCEPT_DESTINATION
  • AUTOMERGE

--author-name (string)

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

--email (string)

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

--commit-message (string)

The commit message for the merge.

--keep-empty-folders | --no-keep-empty-folders (boolean)

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 will be created for empty folders. The default is false.

--conflict-resolution (structure)

A list of inputs to use when resolving conflicts during a merge if AUTOMERGE is chosen as the conflict resolution strategy.

Shorthand Syntax:

replaceContents=[{filePath=string,replacementType=string,content=blob,fileMode=string},{filePath=string,replacementType=string,content=blob,fileMode=string}],deleteFiles=[{filePath=string},{filePath=string}],setFileModes=[{filePath=string,fileMode=string},{filePath=string,fileMode=string}]

JSON Syntax:

{
  "replaceContents": [
    {
      "filePath": "string",
      "replacementType": "KEEP_BASE"|"KEEP_SOURCE"|"KEEP_DESTINATION"|"USE_NEW_CONTENT",
      "content": blob,
      "fileMode": "EXECUTABLE"|"NORMAL"|"SYMLINK"
    }
    ...
  ],
  "deleteFiles": [
    {
      "filePath": "string"
    }
    ...
  ],
  "setFileModes": [
    {
      "filePath": "string",
      "fileMode": "EXECUTABLE"|"NORMAL"|"SYMLINK"
    }
    ...
  ]
}

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See 'aws help' for descriptions of global parameters.

Output

commitId -> (string)

The commit ID of the merge in the destination or target branch.

treeId -> (string)

The tree ID of the merge in the destination or target branch.