Перейти к содержанию

Запросы на слияние

Для включения изменений из исходной ветки (source branch) в целевую ветку (target branch) используется запрос на слияние — Запрос на слияние.

Открыв запрос на слияние, можно визуализировать и совместно работать над изменениями перед слиянием. Запросы на слияние включают:

  • Описание запроса.
  • Изменения в коде и инлайн-обзоры кода.
  • Информация о пайплайнах CI/CD.
  • Раздел комментариев для обсуждения.
  • Список коммитов.

Создание запроса на слияние

Система предоставляет множество различных способов создания запроса на слияние.

Просмотр запросов на слияние

Вы можете просматривать запросы на слияние для своего проекта, группы или себя лично.

Для проекта

Для просмотра всех запросов на слияние для проекта:

  1. Выберите Поиск и переход... слева в меню и найдите проект.
  2. Выберите Код > Запросы на слияние.

Или воспользуйтесь сочетанием клавиш и нажмите g + m.

Для всех проектов в группе

Для просмотра всех запросов на слияние для всех проектов в группе:

  1. Выберите Поиск и переход... слева в меню и найдите вашу группу.
  2. Выберите Код > Запросы на слияние.

Если ваша группа содержит подгруппы, то в этом режиме также отображаются запросы на слияние проектов подгрупп.

Запросы, назначенные на вас

Для просмотра всех назначенных на вас запросов на слияние:

  1. Выберите Поиск и переход... слева в меню.
  2. В раскрывающемся списке выберите пункт Запросы на слияние, назначенные мне.

или:

  • Воспользуйтесь сочетанием клавиш и нажмите Shift + m.

или:

  1. Выберите слева в меню Код > Запросы на слияние.
  2. В раскрывающемся списке выберите пункт Назначенные.

Добавление изменений в запрос на слияние

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

  • Редактирование изменений в Web IDE в браузере с помощью горячей клавиши ".". Используйте этот способ редактирования в браузере для редактирования нескольких файлов или если вы не привыкли работать с командной строкой. Запуск тестов из Web IDE невозможен.
  • Редактирование изменений в Gitpod, если вам нужна полнофункциональная среда как для редактирования файлов, так и для последующего запуска тестов.
  • Вносите изменения из командной строки, если вы хорошо с ней знакомы.

Назначение пользователя на запрос на слияние

Чтобы назначить запрос на слияние пользователю, используйте быстрое действие /assign @user в текстовой области запроса на слияние или:

  1. Выберите Поиск и переход... слева в меню и найдите проект.
  2. Выберите Код > Запросы на слияние и найдите ваш запрос на слияние.
  3. Разверните правую боковую панель и найдите раздел Назначенные.
  4. Выберите Редактировать.
  5. Выполните поиск пользователя, которого необходимо назначить, и выберите его.

Запрос на слияние будет добавлен в назначенный пользователю список запросов на слияние.

Назначение нескольких пользователей

Система позволяет назначать несколько ответственных за запросы на слияние, если за него отвечают несколько человек.

Чтобы назначить запрос на слияние на нескольких пользователей, используйте быстрое действие /assign @user в текстовой области запроса на слияние или:

  1. Выберите Поиск и переход... слева в меню и найдите проект.
  2. Выберите Код > Запросы на слияние и найдите ваш запрос на слияние.
  3. Разверните правую боковую панель и найдите раздел Назначенные.
  4. Выберите Редактировать и выберите всех пользователей, на которых необходимо назначить запрос на слияние.

Чтобы удалить назначенного пользователя, удалите его из того же выпадающего списка.

Закрытие запроса на слияние

Если вы решили полностью прекратить работу над запросом на слияние, рекомендуется закрыть запрос на слияние, а не удалять его. Закрывать запросы на слияние в проекте могут автор и назначенные им лица, а также пользователи с ролями Разработчик, Сопровождающий или Владелец в проекте:

  1. Перейдите к запросу на слияние, который необходимо закрыть.
  2. Прокрутите страницу до поля для комментариев в нижней части страницы.
  3. После поля для комментариев выберите Закрыть запрос на слияние.

Система закроет запрос на слияние, но сохранит записи о нем, его комментариях и всех связанных с ним пайплайнах.

Удаление запроса на слияние

Рекомендуется закрывать запросы на слияние, а не удалять их.

Примечание

Отменить удаление запроса на слияние невозможно.

Для удаления запроса на слияние:

  1. Войдите в Систему с проектной ролью Владелец.

    Примечание

    Только пользователи с этой ролью могут удалять запросы на слияние в проекте.

  2. Перейдите к запросу на слияние, который необходимо удалить, и выберите Редактировать.

  3. Прокрутите страницу в самый низ и выберите Удалить запрос на слияние.

Удаление исходной ветви при слиянии

Вы можете удалить исходную ветку для запроса на слияние:

  • При создании запроса на слияние, выбрав пункт Удалить исходную ветку, когда запрос на слияние принят.
  • При выполнении запроса на слияние, если вы имеете роль Сопровождающий, выберите пункт Удалить ветку источника.

Администратор может настроить автоматическое удаление исходных веток в настройках проекта.

Обновление запросов на слияние при слиянии целевой ветви

Запросы на слияние часто связаны между собой, причем один запрос на слияние зависит от кода, добавленного или измененного в другом запросе на слияние. Чтобы поддерживать небольшие размеры отдельных запросов на слияние, Система может обновлять до четырех открытых запросов на слияние, когда их целевая ветвь сливается с главной веткой main. Например:

  • Запрос на слияние 1: влить feature-alpha в main.
  • Запрос на слияние 2: влить feature- beta в feature-alpha.

Если эти запросы на слияние открыты одновременно и запрос на слияние 1 (feature-alpha) сливается с main, Система обновляет назначение запроса на слияние 2 с feature-alpha на main.

Запросы на слияние с взаимосвязанными обновлениями содержимого обычно обрабатываются одним из этих способов:

  • Запрос на слияние 1 сначала вливается с main. Затем запрос на слияние 2 переадресовывается в main.
  • Запрос на слияние 2 вливается в feature-alpha. Обновленный запрос на слияние 1, в котором теперь содержится содержимое feature-alpha и feature- beta, вливается в main.

Эта возможность работает только при выполнении запросов на слияние. Выбор опции Удалить исходную ветку после объединения не ретаргетирует открытые запросы на слияние.

Перемещение действий боковой панели

Когда флаг Переместить действия в боковую панель включен, в правом верхнем углу в разделе Действия запроса на слияние содержатся следующие действия:

  • Переключатель уведомлений.
  • Пометить запрос на объединение как готовый или драфт.
  • Закрыть запрос на слияние.
  • Заблокировать обсуждение.
  • Копировать ссылку.

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

Когда этот флаг отключен, эти действия находятся в правой боковой панели.