batch_describe_merge_conflicts

batch_describe_merge_conflicts(**kwargs)

Returns information about one or more merge conflicts in the attempted merge of two commit specifiers using the squash or three-way merge strategy.

See also: AWS API Documentation

Request Syntax

response = client.batch_describe_merge_conflicts(
    repositoryName='string',
    destinationCommitSpecifier='string',
    sourceCommitSpecifier='string',
    mergeOption='FAST_FORWARD_MERGE'|'SQUASH_MERGE'|'THREE_WAY_MERGE',
    maxMergeHunks=123,
    maxConflictFiles=123,
    filePaths=[
        'string',
    ],
    conflictDetailLevel='FILE_LEVEL'|'LINE_LEVEL',
    conflictResolutionStrategy='NONE'|'ACCEPT_SOURCE'|'ACCEPT_DESTINATION'|'AUTOMERGE',
    nextToken='string'
)
Parameters
  • repositoryName (string) --

    [REQUIRED]

    The name of the repository that contains the merge conflicts you want to review.

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

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

  • mergeOption (string) --

    [REQUIRED]

    The merge option or strategy you want to use to merge the code.

  • maxMergeHunks (integer) -- The maximum number of merge hunks to include in the output.
  • maxConflictFiles (integer) -- The maximum number of files to include in the output.
  • filePaths (list) --

    The path of the target files used to describe the conflicts. If not specified, the default is all conflict files.

    • (string) --
  • 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.
  • nextToken (string) -- An enumeration token that, when provided in a request, returns the next batch of the results.
Return type

dict

Returns

Response Syntax

{
    'conflicts': [
        {
            'conflictMetadata': {
                'filePath': 'string',
                'fileSizes': {
                    'source': 123,
                    'destination': 123,
                    'base': 123
                },
                'fileModes': {
                    'source': 'EXECUTABLE'|'NORMAL'|'SYMLINK',
                    'destination': 'EXECUTABLE'|'NORMAL'|'SYMLINK',
                    'base': 'EXECUTABLE'|'NORMAL'|'SYMLINK'
                },
                'objectTypes': {
                    'source': 'FILE'|'DIRECTORY'|'GIT_LINK'|'SYMBOLIC_LINK',
                    'destination': 'FILE'|'DIRECTORY'|'GIT_LINK'|'SYMBOLIC_LINK',
                    'base': 'FILE'|'DIRECTORY'|'GIT_LINK'|'SYMBOLIC_LINK'
                },
                'numberOfConflicts': 123,
                'isBinaryFile': {
                    'source': True|False,
                    'destination': True|False,
                    'base': True|False
                },
                'contentConflict': True|False,
                'fileModeConflict': True|False,
                'objectTypeConflict': True|False,
                'mergeOperations': {
                    'source': 'A'|'M'|'D',
                    'destination': 'A'|'M'|'D'
                }
            },
            'mergeHunks': [
                {
                    'isConflict': True|False,
                    'source': {
                        'startLine': 123,
                        'endLine': 123,
                        'hunkContent': 'string'
                    },
                    'destination': {
                        'startLine': 123,
                        'endLine': 123,
                        'hunkContent': 'string'
                    },
                    'base': {
                        'startLine': 123,
                        'endLine': 123,
                        'hunkContent': 'string'
                    }
                },
            ]
        },
    ],
    'nextToken': 'string',
    'errors': [
        {
            'filePath': 'string',
            'exceptionName': 'string',
            'message': 'string'
        },
    ],
    'destinationCommitId': 'string',
    'sourceCommitId': 'string',
    'baseCommitId': 'string'
}

Response Structure

  • (dict) --

    • conflicts (list) --

      A list of conflicts for each file, including the conflict metadata and the hunks of the differences between the files.

      • (dict) --

        Information about conflicts in a merge operation.

        • conflictMetadata (dict) --

          Metadata about a conflict in a merge operation.

          • filePath (string) --

            The path of the file that contains conflicts.

          • fileSizes (dict) --

            The file sizes of the file in the source, destination, and base of the merge.

            • source (integer) --

              The size of a file in the source of a merge or pull request.

            • destination (integer) --

              The size of a file in the destination of a merge or pull request.

            • base (integer) --

              The size of a file in the base of a merge or pull request.

          • fileModes (dict) --

            The file modes of the file in the source, destination, and base of the merge.

            • source (string) --

              The file mode of a file in the source of a merge or pull request.

            • destination (string) --

              The file mode of a file in the destination of a merge or pull request.

            • base (string) --

              The file mode of a file in the base of a merge or pull request.

          • objectTypes (dict) --

            Information about any object type conflicts in a merge operation.

            • source (string) --

              The type of the object in the source branch.

            • destination (string) --

              The type of the object in the destination branch.

            • base (string) --

              The type of the object in the base commit of the merge.

          • numberOfConflicts (integer) --

            The number of conflicts, including both hunk conflicts and metadata conflicts.

          • isBinaryFile (dict) --

            A boolean value (true or false) indicating whether the file is binary or textual in the source, destination, and base of the merge.

            • source (boolean) --

              The binary or non-binary status of file in the source of a merge or pull request.

            • destination (boolean) --

              The binary or non-binary status of a file in the destination of a merge or pull request.

            • base (boolean) --

              The binary or non-binary status of a file in the base of a merge or pull request.

          • contentConflict (boolean) --

            A boolean value indicating whether there are conflicts in the content of a file.

          • fileModeConflict (boolean) --

            A boolean value indicating whether there are conflicts in the file mode of a file.

          • objectTypeConflict (boolean) --

            A boolean value (true or false) indicating whether there are conflicts between the branches in the object type of a file, folder, or submodule.

          • mergeOperations (dict) --

            Whether an add, modify, or delete operation caused the conflict between the source and destination of the merge.

            • source (string) --

              The operation (add, modify, or delete) on a file in the source of a merge or pull request.

            • destination (string) --

              The operation on a file in the destination of a merge or pull request.

        • mergeHunks (list) --

          A list of hunks that contain the differences between files or lines causing the conflict.

          • (dict) --

            Information about merge hunks in a merge or pull request operation.

            • isConflict (boolean) --

              A Boolean value indicating whether a combination of hunks contains a conflict. Conflicts occur when the same file or the same lines in a file were modified in both the source and destination of a merge or pull request. Valid values include true, false, and null. True when the hunk represents a conflict and one or more files contains a line conflict. File mode conflicts in a merge do not set this to true.

            • source (dict) --

              Information about the merge hunk in the source of a merge or pull request.

              • startLine (integer) --

                The start position of the hunk in the merge result.

              • endLine (integer) --

                The end position of the hunk in the merge result.

              • hunkContent (string) --

                The base-64 encoded content of the hunk merged region that might contain a conflict.

            • destination (dict) --

              Information about the merge hunk in the destination of a merge or pull request.

              • startLine (integer) --

                The start position of the hunk in the merge result.

              • endLine (integer) --

                The end position of the hunk in the merge result.

              • hunkContent (string) --

                The base-64 encoded content of the hunk merged region that might contain a conflict.

            • base (dict) --

              Information about the merge hunk in the base of a merge or pull request.

              • startLine (integer) --

                The start position of the hunk in the merge result.

              • endLine (integer) --

                The end position of the hunk in the merge result.

              • hunkContent (string) --

                The base-64 encoded content of the hunk merged region that might contain a conflict.

    • nextToken (string) --

      An enumeration token that can be used in a request to return the next batch of the results.

    • errors (list) --

      A list of any errors returned while describing the merge conflicts for each file.

      • (dict) --

        Returns information about errors in a BatchDescribeMergeConflicts operation.

        • filePath (string) --

          The path to the file.

        • exceptionName (string) --

          The name of the exception.

        • message (string) --

          The message provided by the exception.

    • destinationCommitId (string) --

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

    • sourceCommitId (string) --

      The commit ID of the source 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.MergeOptionRequiredException
  • CodeCommit.Client.exceptions.InvalidMergeOptionException
  • CodeCommit.Client.exceptions.InvalidContinuationTokenException
  • CodeCommit.Client.exceptions.CommitRequiredException
  • CodeCommit.Client.exceptions.CommitDoesNotExistException
  • CodeCommit.Client.exceptions.InvalidCommitException
  • CodeCommit.Client.exceptions.TipsDivergenceExceededException
  • CodeCommit.Client.exceptions.InvalidMaxConflictFilesException
  • CodeCommit.Client.exceptions.InvalidMaxMergeHunksException
  • 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