get_merge_options

get_merge_options(**kwargs)

Returns information about the merge options available for merging two specified branches. For details about why a merge option is not available, use GetMergeConflicts or DescribeMergeConflicts.

See also: AWS API Documentation

Request Syntax

response = client.get_merge_options(
    repositoryName='string',
    sourceCommitSpecifier='string',
    destinationCommitSpecifier='string',
    conflictDetailLevel='FILE_LEVEL'|'LINE_LEVEL',
    conflictResolutionStrategy='NONE'|'ACCEPT_SOURCE'|'ACCEPT_DESTINATION'|'AUTOMERGE'
)
Parameters
  • repositoryName (string) --

    [REQUIRED]

    The name of the repository that contains the commits about which you want to get merge options.

  • sourceCommitSpecifier (string) --

    [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 (string) --

    [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).

  • conflictDetailLevel (string) -- 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 (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 is successful.
Return type

dict

Returns

Response Syntax

{
    'mergeOptions': [
        'FAST_FORWARD_MERGE'|'SQUASH_MERGE'|'THREE_WAY_MERGE',
    ],
    'sourceCommitId': 'string',
    'destinationCommitId': 'string',
    'baseCommitId': 'string'
}

Response Structure

  • (dict) --

    • mergeOptions (list) --

      The merge option or strategy used to merge the code.

      • (string) --
    • sourceCommitId (string) --

      The commit ID of the source commit specifier that was used in the merge evaluation.

    • destinationCommitId (string) --

      The commit ID of the destination commit specifier that was used in the merge evaluation.

    • baseCommitId (string) --

      The commit ID of the merge base.

Exceptions

  • CodeCommit.Client.exceptions.RepositoryNameRequiredException
  • CodeCommit.Client.exceptions.InvalidRepositoryNameException
  • CodeCommit.Client.exceptions.RepositoryDoesNotExistException
  • CodeCommit.Client.exceptions.CommitRequiredException
  • CodeCommit.Client.exceptions.CommitDoesNotExistException
  • CodeCommit.Client.exceptions.InvalidCommitException
  • CodeCommit.Client.exceptions.TipsDivergenceExceededException
  • CodeCommit.Client.exceptions.InvalidConflictDetailLevelException
  • CodeCommit.Client.exceptions.InvalidConflictResolutionStrategyException
  • CodeCommit.Client.exceptions.MaximumFileContentToLoadExceededException
  • CodeCommit.Client.exceptions.MaximumItemsToCompareExceededException
  • CodeCommit.Client.exceptions.EncryptionIntegrityChecksFailedException
  • CodeCommit.Client.exceptions.EncryptionKeyAccessDeniedException
  • CodeCommit.Client.exceptions.EncryptionKeyDisabledException
  • CodeCommit.Client.exceptions.EncryptionKeyNotFoundException
  • CodeCommit.Client.exceptions.EncryptionKeyUnavailableException