Spec-Zone.ru › AWS CLI v2

[ aws . codecommit ]

merge-pull-request-by-squash

Описание

Попытка объединить исходный коммит запроса на вытягивание в указанную целевую ветвь для этого запроса на вытягивание в указанном коммите, используя стратегию слияния squash. Если слияние успешно выполнено, запрос на вытягивание закрывается.

См. также: Документацию API AWS

Синтаксис

  merge-pull-request-by-squash
--pull-request-id <value>
--repository-name <value>
[--source-commit-id <value>]
[--conflict-detail-level <value>]
[--conflict-resolution-strategy <value>]
[--commit-message <value>]
[--author-name <value>]
[--email <value>]
[--keep-empty-folders | --no-keep-empty-folders]
[--conflict-resolution <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]

Параметры

--pull-request-id (строка)

Сгенерированный системой идентификатор запроса на вытягивание. Чтобы получить этот идентификатор, используйте ListPullRequests .

--repository-name (строка)

Имя репозитория, в котором был создан запрос на вытягивание.

--source-commit-id (строка)

Полный идентификатор коммита исходного или обновлённого коммита в ветке источника запроса на вытягивание. Передайте это значение, если вы хотите, чтобы было выброшено исключение, если текущий идентификатор коммита вершины ветки источника не совпадает с этим идентификатором коммита.

--conflict-detail-level (строка)

Уровень детализации конфликтов. Если не указано, используется значение по умолчанию FILE_LEVEL, которое возвращает результат «невозможно слить», если один и тот же файл имеет различия в обеих ветках. Если указано LINE_LEVEL, конфликт считается несливаемым, если один и тот же файл в обеих ветках имеет различия в одной и той же строке.

Возможные значения:

  • FILE_LEVEL
  • LINE_LEVEL

--conflict-resolution-strategy (строка)

Указывает, какую ветку использовать при разрешении конфликтов или пытаться автоматически объединить две версии файла. По умолчанию используется NONE, что требует ручного разрешения любых конфликтов перед успешным выполнением операции слияния.

Возможные значения:

  • NONE
  • ACCEPT_SOURCE
  • ACCEPT_DESTINATION
  • AUTOMERGE

--commit-message (строка)

Сообщение о коммите, которое следует включить в информацию о коммите для слияния.

--author-name (строка)

Имя автора, который создал коммит. Эта информация используется как для автора, так и для исполнителя коммита.

--email (строка)

Адрес электронной почты человека, выполняющего слияние ветвей. Эта информация используется в информации о коммите для слияния.

--keep-empty-folders | --no-keep-empty-folders (логическое значение)

Если коммит содержит удаления, нужно ли сохранить папку или структуру папок, если изменения оставляют папки пустыми. Если true, для пустых папок создается файл .gitkeep. По умолчанию false.

--conflict-resolution (структура)

Если стратегия разрешения конфликтов AUTOMERGE, список входных данных для использования при разрешении конфликтов во время слияния.

replaceContents -> (список)

Файлы, содержимое которых должно быть заменено в рамках разрешения конфликта при слиянии.

(структура)

Информация о записи замены содержимого в конфликте операции слияния или запроса на вытягивание.

filePath -> (строка)

Путь к конфликтующему файлу.

replacementType -> (строка)

Тип замены, используемый для определения способа разрешения конфликта.

content -> (бинарный файл)

Содержимое, закодированное в base-64, которое следует использовать при типе замены USE_NEW_CONTENT.

fileMode -> (строка)

Режим файла, применяемый при разрешении конфликта.

deleteFiles -> (список)

Файлы, которые должны быть удалены в рамках разрешения конфликта при слиянии.

(структура)

Файл, который удаляется в рамках коммита.

filePath -> (строка)

Полный путь к файлу, включая имя файла.

setFileModes -> (список)

Режимы файлов, которые устанавливаются в рамках разрешения конфликта при слиянии.

(структура)

Информация об изменениях режима файла.

filePath -> (строка)

Полный путь к файлу, включая имя файла.

fileMode -> (строка)

Режим файла.

Сокращенный синтаксис:

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:

{
  "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 | --cli-input-yaml (строка) Читает аргументы из предоставленной строки JSON. Строка JSON соответствует формату, предоставленному --generate-cli-skeleton. Если на командной строке предоставлены другие аргументы, эти значения переопределят значения, предоставленные JSON. Невозможно передавать произвольные бинарные значения с помощью значения, предоставленного JSON, так как строка будет воспринята буквально. Это может быть не указано вместе с --cli-input-yaml.

--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса к API. Если предоставлено значение без значения или значение input, выводит пример JSON-ввода, который может быть использован в качестве аргумента для --cli-input-json. Аналогично, если предоставлено yaml-input, выведет пример YAML-ввода, который может быть использован с --cli-input-yaml. Если предоставлено значение output, выполняет проверку входных данных команды и возвращает JSON-пример выходных данных для этой команды. Сгенерированный JSON-скелет не является стабильным между версиями AWS CLI и не гарантирует обратной совместимости с JSON-скелетом, сгенерированным в предыдущих версиях.

Глобальные параметры

--debug (логическое значение)

Включить отладочную запись.

--endpoint-url (строка)

Переопределить стандартный URL команды указанным URL.

--no-verify-ssl (логическое значение)

По умолчанию AWS CLI использует SSL при общении с сервисами AWS. Для каждого подключения SSL AWS CLI будет проверять сертификаты SSL. Этот параметр переопределяет стандартное поведение проверки сертификатов SSL.

--no-paginate (логическое значение)

Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI сделает только один вызов для первой страницы результатов.

--output (строка)

Стиль форматирования выходных данных команды.

  • json
  • text
  • table
  • yaml
  • yaml-stream

--query (строка)

Запрос JMESPath для фильтрации данных ответа.

--profile (строка)

Использовать определённый профиль из файла с данными учетных данных.

--region (строка)

Используемый регион. Переопределяет настройки конфигурации/среды.

--version (строка)

Отобразить версию этого инструмента.

--color (строка)

Включить/выключить цветной вывод.

  • on
  • off
  • auto

--no-sign-request (логическое значение)

Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.

--ca-bundle (строка)

Набор сертификатов CA для проверки сертификатов SSL. Переопределяет настройки конфигурации/среды.

--cli-read-timeout (целое число)

Максимальное время чтения сокета в секундах. Если значение равно 0, чтение сокета будет выполняться в блокирующем режиме без таймаута. Значение по умолчанию — 60 секунд.

--cli-connect-timeout (целое число)

Максимальное время подключения сокета в секундах. Если значение равно 0, подключение сокета будет выполняться в блокирующем режиме без таймаута. Значение по умолчанию — 60 секунд.

--cli-binary-format (строка)

Стиль форматирования, используемый для бинарных блобов. По умолчанию используется формат base64. Формат base64 ожидает, что бинарные блоки будут представлены как строка, закодированная в base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и бинарные значения должны быть переданы буквально. При предоставлении содержимого из файла, которое соответствует бинарному блобу fileb://, всегда будет обрабатываться как бинарное и использовать содержимое файла напрямую независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.

  • base64
  • raw-in-base64-out

--no-cli-pager (логическое значение)

Отключить пейджер CLI для вывода.

--cli-auto-prompt (логическое значение)

Автоматически запрашивать параметры ввода CLI.

--no-cli-auto-prompt (логическое значение)

Отключить автоматическое запросы параметров ввода CLI.

Примеры

Примечание

Для использования следующих примеров необходимо установить и настроить AWS CLI. См. руководство по началу работы в Руководстве пользователя AWS CLI для получения дополнительной информации.

За исключением случаев, когда указано иначе, все примеры используют правила цитирования, характерные для Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. См. использование кавычек со строками в Руководстве пользователя AWS CLI.

Для слияния запроса на вытягивание с использованием стратегии слияния squash

Следующий merge-pull-request-by-squash пример выполняет слияние и закрытие указанного запроса на вытягивание с использованием стратегии разрешения конфликтов ACCEPT_SOURCE в репозитории с именем MyDemoRepo.

aws codecommit merge-pull-request-by-squash \
    --pull-request-id 47 \
    --source-commit-id 99132ab0EXAMPLE \
    --repository-name MyDemoRepo \
    --conflict-detail-level LINE_LEVEL \
    --conflict-resolution-strategy ACCEPT_SOURCE \
    --name "Jorge Souza" --email "jorge_souza@example.com" \
    --commit-message "Merging pull request 47 by squash and accepting source in merge conflicts"

Вывод:

{
    "pullRequest": {
        "approvalRules": [
            {
                "approvalRuleContent": "{\"Version\": \"2018-11-08\",\"DestinationReferences\": [\"refs/heads/main\"],\"Statements\": [{\"Type\": \"Approvers\",\"NumberOfApprovalsNeeded\": 2,\"ApprovalPoolMembers\": [\"arn:aws:sts::123456789012:assumed-role/CodeCommitReview/*\"]}]}",
                "approvalRuleId": "dd8b17fe-EXAMPLE",
                "approvalRuleName": "2-approver-rule-for-main",
                "creationDate": 1571356106.936,
                "lastModifiedDate": 571356106.936,
                "lastModifiedUser": "arn:aws:iam::123456789012:user/Mary_Major",
                "originApprovalRuleTemplate": {
                    "approvalRuleTemplateId": "dd8b17fe-EXAMPLE",
                    "approvalRuleTemplateName": "2-approver-rule-for-main"
                },
                "ruleContentSha256": "4711b576EXAMPLE"
            }
        ],
        "authorArn": "arn:aws:iam::123456789012:user/Li_Juan",
        "clientRequestToken": "",
        "creationDate": 1508530823.142,
        "description": "Review the latest changes and updates to the global variables",
        "lastActivityDate": 1508887223.155,
        "pullRequestId": "47",
        "pullRequestStatus": "CLOSED",
        "pullRequestTargets": [
            {
                "destinationCommit": "9f31c968EXAMPLE",
                "destinationReference": "refs/heads/main",
                "mergeMetadata": {
                    "isMerged": true,
                    "mergedBy": "arn:aws:iam::123456789012:user/Mary_Major"
                },
                "repositoryName": "MyDemoRepo",
                "sourceCommit": "99132ab0EXAMPLE",
                "sourceReference": "refs/heads/variables-branch"
            }
        ],
        "title": "Consolidation of global variables"
    }
}

Для получения дополнительной информации см. Merge a Pull Request в Руководстве пользователя AWS CodeCommit.

Вывод

pullRequest -> (структура)

Возвращает информацию о запросе на добавление.

pullRequestId -> (строка)

Сгенерированный системой идентификатор запроса на добавление.

title -> (строка)

Определённое пользователем название запроса на добавление. Это название отображается в списке запросов на добавление для других пользователей репозитория.

description -> (строка)

Определённое пользователем описание запроса на добавление. Это описание может быть использовано для уточнения, что нужно проверить, и других деталей запроса.

lastActivityDate -> (временная метка)

День и время последней активности пользователя или системы над запросом на добавление в формате временной метки.

creationDate -> (временная метка)

Дата и время первоначального создания запроса на добавление в формате временной метки.

pullRequestStatus -> (строка)

Статус запроса на добавление. Статус запроса на добавление может изменяться только с OPEN на CLOSED.

authorArn -> (строка)

Amazon Resource Name (ARN) пользователя, создавшего запрос на добавление.

pullRequestTargets -> (список)

Цели запроса на добавление, включая исходную ветвь и целевую ветвь запроса на добавление.

(структура)

Возвращает информацию о цели запроса на добавление.

repositoryName -> (строка)

Имя репозитория, содержащего исходную и целевую ветви запроса на добавление.

sourceReference -> (строка)

Ветвь репозитория, содержащая изменения для запроса на добавление. Также известна как исходная ветвь.

destinationReference -> (строка)

Ветвь репозитория, куда сливаются изменения запроса на добавление. Также известна как целевая ветвь.

destinationCommit -> (строка)

Полный идентификатор коммита, являющийся вершиной целевой ветви. Это коммит, куда запрос на добавление был или будет слитый.

sourceCommit -> (строка)

Полный идентификатор коммита вершины исходной ветви, используемой для создания запроса на добавление. Если ветвь запроса на добавление обновляется пушем, пока запрос открыт, идентификатор коммита изменяется, отражая новую вершину ветви.

mergeBase -> (строка)

Идентификатор коммита последнего коммита, который общий для исходной и целевой ветвей.

mergeMetadata -> (структура)

Возвращает метаданные о состоянии слияния, включая информацию о том, было ли произведено слияние.

isMerged -> (логическое значение)

Логическое значение, указывающее, было ли выполнено слияние.

mergedBy -> (строка)

Amazon Resource Name (ARN) пользователя, выполнившего слияние ветвей.

mergeCommitId -> (строка)

Идентификатор коммита слияния, если он есть.

mergeOption -> (строка)

Используемая стратегия слияния.

clientRequestToken -> (строка)

Уникальный, сгенерированный клиентом маркер идемпотентности, который, при предоставлении в запросе, гарантирует, что запрос не может быть повторён с изменённым параметром. Если запрос получен с теми же параметрами и маркер включён, запрос возвращает информацию об исходном запросе, который использовал этот маркер.

revisionId -> (строка)

Сгенерированный системой идентификатор ревизии запроса на добавление.

approvalRules -> (список)

Применённые правила утверждения к запросу на добавление.

(структура)

Возвращает информацию о правиле утверждения.

approvalRuleId -> (строка)

Сгенерированный системой идентификатор правила утверждения.

approvalRuleName -> (строка)

Название правила утверждения.

approvalRuleContent -> (строка)

Содержимое правила утверждения.

ruleContentSha256 -> (строка)

Подпись SHA-256 для содержимого правила утверждения.

lastModifiedDate -> (временная метка)

Дата последнего изменения правила утверждения в формате временной метки.

creationDate -> (временная метка)

Дата создания правила утверждения в формате временной метки.

lastModifiedUser -> (строка)

Amazon Resource Name (ARN) пользователя, внесшего последние изменения в правило утверждения.

originApprovalRuleTemplate -> (структура)

Шаблон правила утверждения, используемый для создания правила.

approvalRuleTemplateId -> (строка)

Идентификатор шаблона, создавшего правило утверждения.

approvalRuleTemplateName -> (строка)

Имя шаблона, создавшего правило утверждения.

© Copyright 2025, Amazon Web Services. Created using Sphinx.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API