Сведения о запросах на вытягивание

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Запросы на вытягивание (PR) — это способ изменения, проверки и слияния кода в репозитории Git в Azure Repos. PR могут поступать из ветвей в одном репозитории или из ветвей в вилках репозитория. Команды используют PR для просмотра кода и отправки отзывов об изменениях перед слиянием кода в основную ветвь. Рецензенты могут пройти через предложенные изменения, оставить комментарии и проголосовать за утверждение или отклонение кода.

В этой статье описаны рекомендации по запросу на вытягивание и рекомендации по управлению. Инструкции по созданию, просмотру, просмотру и завершению запросов на вытягивание см. в следующих статьях:

Примечание.

По соображениям производительности и стабильности количество рецензентов, которые можно добавить в запрос на вытягивание, должно быть 1000 или меньше. Новые запросы на вытягивание не будут созданы при добавлении более 1000 рецензентов, и существующие запросы на вытягивание не позволяют добавлять более 1000 рецензентов.

Разрешения и предварительные требования

  • Репозитории должны быть включены в проекте. Если концентратор Repos и связанные страницы не отображаются, см. раздел "Включение или отключение службы Azure DevOps" для повторного использования репозиториев.

  • Чтобы просмотреть или просмотреть PR, необходимо быть членом проекта Azure DevOps с базовым доступом или выше.

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

  • Чтобы создать и завершить pr, необходимо быть членом группы безопасности участников или иметь соответствующие разрешения.

Примечание.

Для общедоступных проектов пользователи, которым предоставлен доступ заинтересованных лиц , имеют полный доступ к Azure Repos.

  • Репозитории должны быть включены в проекте. Если концентратор Repos и связанные страницы не отображаются, см. раздел "Включение или отключение службы Azure DevOps" для повторного использования репозиториев.
  • Чтобы просмотреть или просмотреть PR, необходимо быть членом проекта Azure DevOps с базовым доступом или выше. Если вы не член проекта, добавьте его.
  • Чтобы внести свой вклад в pr, необходимо быть членом группы безопасности читателей или иметь соответствующие разрешения.
  • Чтобы создать и завершить pr, необходимо быть членом группы безопасности участников или иметь соответствующие разрешения.

Дополнительные сведения о разрешениях и доступе см. в разделе "Репозиторий Git по умолчанию" и " Разрешения ветви" и "Сведения о уровнях доступа".

Отзывы о качестве запросов на вытягивание

Качественные проверки начинаются с качественных отзывов. Ниже приведены некоторые ключи для больших отзывов о pr:

  • Владелец PR должен иметь правильных людей просматривать PR, и убедиться, что рецензенты знают, что делает код.
  • Рецензенты должны предоставлять практические, конструктивные отзывы.
  • Владельцы и рецензенты должны быстро комментировать и отвечать на них.

Владельцы PR должны:

  • Обязательно выберите нужных рецензентов, чтобы назначить pr.
  • Включите рецензентов, которые знают, как работает код.
  • Попросите разработчиков работать в других областях, чтобы поделиться своими идеями.
  • Укажите четкое описание изменений.
  • Предоставьте рекомендации рецензента с шаблонами запросов на вытягивание.
  • Предоставьте сборку кода с исправлением или компонентом, запущенным в нем.
  • Ответить на комментарии, принимая предложение или объясняя, почему предлагаемое изменение не является идеальным.
  • Для получения хороших предложений за пределами области pr, создайте новые рабочие элементы, ветви и PR, чтобы внести эти изменения.

Рецензенты должны выполнять следующие задачи.

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

Дополнительные сведения см. в статье "Получение отзывов с запросами на вытягивание Git".

Политики ветви и запросы на вытягивание

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

Вы можете добавить дополнительные политики в PR, чтобы повысить качество кода в ветвях ключей. Дополнительные требования, такие как чистая сборка предлагаемого кода или утверждения от нескольких рецензентов, могут помочь защитить ветви ключей.

Вы можете задать количество необходимых утверждений для PR в политике ветви. Вы также можете задать для определенных рецензентов обязательные или необязательные для всех или определенных PR. Для параметра pr можно задать автозавершение с необходимым количеством утверждений, даже если другие рецензенты отклоняют изменения. Однако необходимые рецензенты должны утвердить PR перед слиянием PR. Рекомендуется по крайней мере два рецензента проверить и утвердить изменения в значительной степени pr.

Чтобы сбросить голоса всякий раз, когда автор pr отправляет новые изменения, выберите "Сброс рецензентов кода" голосов при наличии новых изменений в политике "Требовать минимальное количество рецензентов ветвей".

В следующей таблице перечислены политики, которые можно определить для настройки ветви. Общие сведения обо всех политиках репозитория и ветвях и параметрах см. в параметрах и политиках репозитория Git.

Политика

По умолчанию

Description


Выключено

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

Выключено

Поощрять трассировку путем проверки связанных рабочих элементов в запросах на вытягивание

Выключено

Убедитесь, что разрешены все комментарии по запросам на вытягивание.

Выключено

Журнал ветви управления путем ограничения доступных типов слияния при завершении запросов на вытягивание.

Выключено

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

Выключено

Добавьте одну или несколько политик, чтобы требовать от других служб публикации состояния успешного выполнения запросов на вытягивание. Также может включать или отключать политики.

Выключено

Добавьте одну или несколько политик для назначения рецензентов кода для автоматического включения при изменении запросов на вытягивание определенных областей кода. Также может включать или отключать политики.

Дополнительные сведения см. в разделе:

Определение проверки состояния для улучшения качества кода

Запросы на вытягивание и политики ветви позволяют командам применять рекомендации по просмотру кода и выполнению автоматических сборок. Многие команды имеют дополнительные требования и проверки для выполнения кода. Чтобы покрыть эти потребности, вы можете интегрировать проверки состояния PR в рабочий процесс pr. При проверки состояния pr внешние службы могут программно подписать изменения кода, связав сведения об успешном выполнении или сбое с pr.

Дополнительные сведения см. в следующих статьях:

Базовая проблема, возникающая при нескольких слияниях

В некоторых случаях pr имеет несколько истинных баз слияний, и эта ситуация может вызвать проблемы с безопасностью. Если файлы в PR имеют разные версии между базами слияния, появляется предупреждение о нескольких базах слияния. Дополнительные сведения и исправление см. в разделе "Несколько баз слиянием".

Следующие шаги