Просмотр пул-реквестов
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
При создании pull request (PR) и указании обязательных/необязательных рецензентов, Azure Repos уведомит их о готовности вашего PR для проверки. Все необходимые рецензенты должны утвердить изменения в PR, прежде чем их можно будет объединить с целевой ветвью. Для PR, которые изменяют критически важные ветви, такие как main
ветвь, ваша команда может создать политики ветвей, которые указывают рецензентов или требуют минимального количества рецензентов. Если политики ветвей добавляют необязательных рецензентов в PR, их можно оставить, сделать обязательными или удалить. Если политики ветвей добавляют необходимых рецензентов в ваш PR, вы не можете сделать их необязательными или удалить их. Сведения о назначении рецензентов с помощью политик ветвей см. в статье Автоматическое включение рецензентов кода.
Когда вы просматриваете PR, постарайтесь дать конструктивную обратную связь, которая будет точной и легко понятной. Для получения дополнительной информации об обратной связи по рецензиям см. обратную связь по запросам на вытягивание. В этой статье описывается, как проверить пулл-реквесты в Azure DevOps.
Вы можете просматривать только PR Azure DevOps на веб-портале с помощью браузера.
В этой статье раскрываются следующие темы:
- Проверить изменения
- Использование комментариев
- Изменение файлов
- Отслеживание проверенных файлов
- Голосование по изменениям PR
- Завершение PR
В этой статье раскрываются следующие темы:
- Проверить изменения
- Использование комментариев
- Голосование по изменениям PR
Предварительные условия
Репозитории должны быть активированы в параметрах проекта Azure DevOps. Если концентратор Repos и связанные страницы не отображаются, см. раздел "Включение или отключение службы Azure DevOps, чтобы снова включить Repos.
Чтобы просмотреть PR, нужно быть участником проекта Azure DevOps, которому принадлежит PR, с уровнем доступа не ниже Basic.
Если у вас нет проекта, создайте его или зарегистрируйтесь бесплатно.
Если вы не член проекта, добавьте его.
Примечание.
Для общедоступных проектов пользователи, которым предоставлен доступ заинтересованных лиц , имеют полный доступ к Azure Repos.
Репозитории должны быть включены в настройках проекта Azure DevOps. Если концентратор Repos и связанные страницы не отображаются, см. раздел "Включение или отключение службы Azure DevOps", чтобы повторно включить Repos.
Чтобы просматривать PR, станьте участником проекта Azure DevOps с как минимум уровнем доступа «Базовый» . Если вы не член проекта, добавьте его.
- Дополнительные сведения о разрешениях и доступе см. в разделе "Репозиторий Git по умолчанию" и " Разрешения ветви" и "Сведения о уровнях доступа".
Вы можете управлять PR в Azure DevOps Services с помощью интерфейса командной строки Azure DevOps (CLI). Интерфейс командной строки Azure DevOps доступен при установке Azure CLI и расширения Azure DevOps. Список команд CLI для управления PR см. в командах az repos pr
.
Проверить изменения
Запросы на пулл позволяют назначенным рецензентам проверять, обсуждать и голосовать за предложенные изменения до применения этих изменений к целевой ветви репозитория. Помните, что если разработка выполняется с одинаковыми файлами в разных ветвях, могут возникнуть конфликтующие изменения. В этом случае необходимо тщательно проанализировать и устранить эти конфликты. Для этого может потребоваться вручную изменить файл, чтобы правильно применить изменения из исходной ветви, целевой ветви или обеих. Выполнение всех изменений из источника или целевого объекта (которое можно сделать одним щелчком кнопки) может быть неоптимальным и может привести к потере некоторых необходимых изменений. Это можно сделать с помощью средств ADO или будет удобнее использовать средства разработки (например, Visual Studio).
Чтобы узнать больше, см. «Разрешение конфликтов слияния».
В следующих шагах описывается, как рецензенты PR в Azure Repos могут перемещаться по pr для понимания предлагаемых изменений:
В веб-браузере откройте командный проект для организации Azure DevOps. Выберите
Запросы на вытягивание репозитория , чтобы отобразить список запросов на вытягивание. По умолчанию новая PR открывается на вкладке «Обзор». На вкладке «Обзор» запроса на внесение изменений отображаются заголовок, описание, рецензенты, связанные рабочие элементы, журнал, статус и комментарии. Ознакомьтесь с описанием PR, чтобы увидеть предложенные изменения. Просмотрите комментарии, чтобы понять проблемы, выявленные другими рецензентами.
Примечание.
Каждый файл оценивается для ряда изменений и помечается знаком "+" или меткой "переименовать, изменить" рядом с его именем. Если файл имеет более 50 процентов изменений, он считается переименованным. Это пороговое значение по умолчанию для репозиториев Git, которые нельзя изменить.
Перейдите на вкладку "Файлы", чтобы просмотреть все изменения содержимого в исходной ветви PR. Первоначальное представление отображает сводное представление всех изменений файла. Нажмите кнопку "Вид" рядом с файлом, чтобы просмотреть только изменения этого файла. Если файл был изменен, кнопка "Вид " открывает представление диффа. Если файл был добавлен или удален, кнопка "Вид " открывает область содержимого.
Примечание.
По соображениям производительности сводное представление не отображает изменения для файла размером более 0,5 МБ.
В представлении диффа для файла можно выбрать макет параллельного или встроенного диффа.
Совет
Для любого одного файла, превышающего 5 МБ, представление диффа отображает усеченное содержимое файла. Для представления полного содержимого скачайте и просмотрите такие файлы с помощью локального средства диффа.
Используйте дерево файлов слева для просмотра другого файла или выберите корень дерева файлов, чтобы просмотреть сводное представление всех изменений файла.
Чтобы просмотреть набор изменений, представленный конкретными отправками в исходную ветвь, выберите один или несколько наборов изменений из раскрывающегося списка изменений. При выборе одного или нескольких наборов изменений представление диффа обновляется, чтобы отобразить только изменения из выбранных наборов изменений. Эта функция полезна, если изменения были внесены в PR после последней проверки и вы просто хотите увидеть новые изменения. Раскрывающийся список изменений именует каждый набор изменений текстом коммита из последнего коммита в каждой операции пуша.
Совет
Удерживайте клавишу SHIFT при выборе нескольких наборов изменений из раскрывающегося списка изменений.
Перейдите на вкладку "Обновления", чтобы просмотреть все отправленные наборы изменений, чтобы убедиться, что вы не пропустили какие-либо изменения исходной ветви. Наборы изменений нумеруются, а последний набор изменений отображается в верхней части списка. Каждый набор изменений показывает фиксации, которые были отправлены в этой операции отправки. Принудительно отправленный набор изменений не перезаписывает журнал набора изменений и будет отображаться в списке наборов изменений так же, как и любой другой набор изменений.
Перейдите на вкладку "Фиксации", чтобы просмотреть журнал фиксации исходной ветви после её расхождения с целевой ветвью. Журнал фиксаций на вкладке "Фиксации" будет перезаписан, если автор PR принудительно отправит другую историю изменений, поэтому фиксации, которые отображаются на вкладке "Фиксации", могут отличаться от тех, что видны на вкладке "Обновления".
Чтобы получить краткое представление о состоянии PR, на вкладке "Обзор PR" приведены проверки, требования и политики ветвей, которые PR проходит или не проходит. В некоторых случаях сводка содержит фрагмент сообщения об ошибке из журнала проверки состояния. В обзоре перечислены только проверки, завершившиеся с ошибками, но вы можете просмотреть все успешные и неудачные результаты проверок политик, выбрав Просмотреть <n> проверки.
На вкладке "Обзор PR" можно просмотреть описание и комментарии PR, чтобы понять предложенные изменения и ознакомиться с проблемами, поднятыми другими рецензентами.
Просмотр файлов
Перейдите на вкладку Файлы PR, чтобы просмотреть фактические изменения, внесенные между исходной ветвью и целевой ветвью pull request.
Примечание.
Различия в pull-запросах в Azure DevOps и сравнении ветвей в Azure DevOps вызваны различными методами сравнения.
Существует два метода сравнения для команды Git diff: двухточие (git diff A..B
) и трехточие (git diff A...B
). По умолчанию запросы на вытягивание показывают разницу в формате «three-dot diff», тогда как сравнение ветвей показывает разницу в формате «two-dot diff».
Например:
C---D---E branch
/
A---B---F---G master
Запросы на вытягивание: git diff branch...master
будут порождать только коммиты C, D, E.
Сравнение ветвей: git diff branch..master
будет производить фиксации C, D, E, F, G.
Дополнительные сведения см. в разделе сравнения git diff с тремя и двумя точками и git diff
Примечание.
При просмотре разницы для одного выбранного файла существует ограничение размера файла размером 5 МБ. Чтобы просмотреть и диффировать файлы размером более 5 МБ, можно скачать файл и просмотреть его с помощью локального средства диффа. При просмотре разницы в коллекции файлов ограничение размера для каждого файла составляет 0,5 МБ по соображениям производительности.
Проверка обновлений
Просмотрите предыдущие версии кода из раскрывающегося списка "Все обновления ".
Каждое обновление ветви добавляет новую версию в список и на вкладке Обновления PR. При выборе различных обновлений представление представления diff отображает различия между файлами в каждой версии PR.
Вы можете догнать обновления PR после отсутствия, просматривая изменения, внесенные с момента вашего последнего обзора.
Просмотрите список изменений от автора на вкладке "Обновления ".
Просматривайте и выбирайте изменения, внесенные в коммиты ветки на вкладке "Коммиты".
Использование комментариев
Авторы и обозреватели PR могут общаться друг с другом, добавляя и отвечая на комментарии PR. При просмотре PR используйте комментарии, чтобы указать проблемы с предлагаемыми изменениями, предложить изменения и ответить на предыдущие комментарии. Стремитесь к конструктивным отзывам, которые точны и понятны. Обращайтесь к получателям напрямую, используя их @username
. Ссылайтесь на рабочие элементы с помощью #workitemID
, а на другие PR — с помощью !pullrequestID
. Иногда авторы PR сами создают комментарии для целей документации.
Предоставление отзывов в комментариях
Если ваш отзыв применяется к определенной строке или диапазону строк в файле, добавьте комментарий в этом расположении в файле:
На вкладке "Файлы" наведите указатель мыши на строку, которую вы хотите прокомментировать, и нажмите кнопку
комментария, чтобы открыть поле для добавления комментария. Вы также можете выбрать несколько строк, а затем нажать кнопку комментария, которая отображается при наведении указателя мыши на эти строки.
Введите комментарий в поле комментария и нажмите кнопку "Комментарий".
Если ваш отзыв применяется ко всему файлу, добавьте комментарий на уровне файла, нажав кнопку "Добавить комментарий " в меню параметров файла:
Чтобы предоставить общие отзывы, не связанные с определенным файлом, добавьте комментарий на вкладке "Обзор ":
Рецензенты pr также могут использовать комментарии для предложения изменений в конкретных строках файлов, как описано в следующем разделе.
Предложение изменений в комментариях
Примечания можно использовать для предложения замены текста для одной или нескольких строк в файле:
На вкладке «Файлы» наведите указатель мыши на строку, к которой вы хотите добавить комментарий, и нажмите кнопку
комментария, чтобы открыть встроенное поле для комментария. Вы также можете выбрать несколько строк, а затем нажать кнопку комментария, которая отображается при наведении указателя мыши на эти строки. Если оно принято, предлагаемое содержимое заменит строку или строки, к которым был добавлен комментарий.
Щелкните значок лампочки в поле комментария, чтобы внести предлагаемые изменения в поле комментария в огороженный блок кода, а затем нажмите кнопку "Комментарий". Значок лампочки не отображается, если добавить комментарий в исходный код (левую часть) параллельного представления сравнения.
Авторы pr могут принять ваше предложение, выполнив следующие действия:
Выбрать «Применить изменения», чтобы подготовить их к фиксации.
При выборе Зафиксировать все изменения будут зафиксированы все подготовленные изменения. Авторы PR могут отменить настройку предложения, выбрав "Отменить изменение".
Изменение или удаление комментариев
Вы можете изменить или удалить комментарий, наведите указатель мыши на комментарий и выберите значок редактирования или удаления :
Лайкнуть комментарии
Авторы и рецензенты PR могут оценить свой собственный или чужой комментарий, наведя указатель мыши на комментарий и выбрав значок с поднятым вверх большим пальцем.
Комментарии с лайками показывают значок с поднятым вверх большим пальцем и количество лайков. Наведите указатель мыши на значок с поднятым пальцем, чтобы увидеть список людей, которым понравился комментарий.
Ответ на комментарии
Авторы PR должны отвечать на комментарии, чтобы сообщить рецензентам, как они отвечают на отзывы и предложения:
Чтобы ответить на комментарий, введите ответ в поле "Запись ответа ". Обращайтесь напрямую к получателям, используя их
@username
. Ссылайтесь на рабочие элементы, используя#workitemID
, и на другие PR, используя!pullrequestID
.После ввода ответа нажмите "Ответить и решить", если ваш ответ окончательный. В противном случае нажмите кнопку "Ответ".
Если выбрать "Ответ и разрешить", состояние комментария изменится на "Разрешено". Авторы PR также могут напрямую изменить состояние комментария, как описано в следующем разделе.
Изменение состояния комментария
Новые комментарии изначально имеют активное состояние, которое авторы PR обновляют во время процесса проверки PR, чтобы указать, как они рассмотрели отзывы рецензентов и предложения. Авторы PR могут в раскрывающемся списке состояния выбрать статус комментария:
Активно: состояние по умолчанию для новых комментариев.
В ожидании: вопрос в этом комментарии находится на рассмотрении и ожидает дальнейших действий.
Устранена проблема, связанная с этим комментарием.
Не исправится: проблема в этом комментарии отмечается, но не будет исправлена.
Закрыто: обсуждение в этом комментарии закрыто.
Авторы и рецензенты PR могут отслеживать прогресс PR, фильтруя комментарии по их статусу, как описано в следующем разделе.
Добавьте комментарии в PR, чтобы внести предложения, ответить на предыдущие комментарии и указать проблемы с предлагаемыми изменениями.
Примечания на вкладке Файлы в PR, наведите указатель мыши на строку, на которую хотите оставить комментарий, и выберите кнопку комментария Скриншот, показывающий кнопку комментария в PR Azure Repos..
Дайте отзыв, не привязанный к определенной строке кода, прокомментируйте на вкладке «Обзор».
Обращайтесь к автору или другим рецензентам напрямую в ваших комментариях, используя
@username
, и ссылайтесь на рабочие элементы, используя#workitemID
. Вы также можете ссылаться на другие PR с помощью!pullrequestID
.
Редактировать, удалить или поставить лайк на комментарий
Чтобы изменить или удалить комментарий, наведите указатель мыши на комментарий и выберите значок карандаша, чтобы изменить комментарий или значок мусора, чтобы удалить комментарий.
Чтобы поставить лайк своему или чужому комментарию, наведите указатель мыши на комментарий и выберите значок пальца вверх. Комментарии с отметками 'нравится' показывают заполненную иконку и количество отметок 'нравится' в списке комментариев. Наведите указатель мыши на значок, чтобы просмотреть список людей, которые любили комментарий.
Фильтрация комментариев
Вы можете выбрать комментарии или обновления на вкладке "Обзор ", выбрав параметр фильтра в раскрывающемся списке фильтра комментариев. Например, выберите параметр "Что нового фильтра", чтобы просмотреть новые комментарии и обновления после последнего открытия pr. Каждый параметр фильтра показывает количество элементов для своей категории.
Вы можете выбрать, какие комментарии и обновления отображаются на вкладке "Обзор". Скрытие некоторых комментариев и обновлений позволяет упростить просмотр при первом ознакомлении с кодом. Вы также можете показать только новые возможности с момента последнего посещения PR.
Чтобы отфильтровать комментарии и обновления, нажмите кнопку Показать все (n) над списком комментариев и выберите один из параметров фильтрации. В представлении отображаются только выбранные комментарии и обновления. Метка кнопки изменяется, чтобы отобразить критерии фильтрации и количество отображаемых элементов.
Примечания к адресу
Вы можете быстро обновлять ветвь непосредственно на вкладке "Файлы" в Коде в интернете.
Ответ и разрешение комментариев
Ответить на комментарии и обновить состояние комментария, чтобы сообщить рецензентам, как вы решаете свои комментарии и предложения.
- Чтобы устранить комментарий без ответа, нажмите кнопку "Разрешить " в комментарии.
- Чтобы ответить на комментарий, введите ответ в поле "Запись ответа" и нажмите кнопку "Ответ".
- Чтобы ответить на комментарий и устранить его, введите ответ в поле "Запись ответа " и выберите "Ответить" и "Разрешить".
- Ответьте конкретным рецензентам, используя
@username
в ответе, и ссылайтесь на рабочие элементы, используя#workitemID
. Вы также можете ссылаться на другие PR с помощью!pullrequestID
.
Новые комментарии начинаются в активном состоянии. Выберите "Разрешить" или "Ответить" и "Разрешить", чтобы обновить состояние комментария до "Разрешено".
Дополнительные параметры доступны в раскрывающемся списке разрешения комментариев:
- На рассмотрении: комментарий все еще рассматривается.
- Ожидание: проблема в этом комментарии будет устранена, но пока не устранена.
- Устранена проблема, связанная с этим комментарием.
- Не будет исправлено: предложение в комментарии было принято во внимание, но этот PR не будет его решать.
- Закрыто. Обсуждение этого комментария закрыто.
Чтобы отслеживать файлы, которые уже были проверены, выберите дополнительные параметры рядом с файлом в PR, а затем выберите "Пометить как проверенный".
Изменение файлов
Для удобства авторы PR могут редактировать файлы непосредственно в Azure Repos. Например, возможно, вы приняли предлагаемое изменение кода рецензента и хотите внести аналогичные изменения в другом месте.
Выберите Repos > Files, выберите исходную ветвь PR, выберите файл и нажмите кнопку "Изменить".
Внесите изменения в редактор, а затем нажмите кнопку "Зафиксировать ", чтобы открыть диалоговое окно "Фиксация ".
В диалоговом окне Commit измените сообщение коммита при необходимости, а затем нажмите Зафиксировать, чтобы зафиксировать и отправить изменения в ваш PR.
Отслеживание проверенных файлов
Рецензенты PR могут отслеживать проверенные файлы, выбрав Mark как проверенный в меню параметров файла или установив флажок рядом с файлом или папкой:
Голосование по изменениям PR
Рецензенты PR могут голосовать по PR, выбрав вариант голосования в раскрывающемся списке голосов. Значок рецензента на странице pr отобразит указание их голосования.
Варианты голосования:
Утверждает: утверждает предложенные изменения в PR. Этот вариант — просто голосование и не одобряет PR.
Утверждение с предложениями: утверждает предлагаемые изменения в PR с дополнительными предложениями для улучшения. Этот вариант является только голосованием и не одобряет PR.
Подождите автора: просит автора просмотреть комментарии рецензента. Автор PR должен сообщить рецензентам, чтобы они повторно просмотрели код после исправления замечаний. Если обязательный рецензент задает этот параметр голосования, голосование блокирует утверждение PR.
Отклонение: указывает, что изменения недопустимы. При выборе этого параметра добавьте комментарий, объясняющий причину. Если обязательный рецензент задает этот параметр голосования, голосование блокирует утверждение PR.
Сброс отзывов: очищает свой голос. Отсутствие голосования не препятствует завершению PR.
Нажмите кнопку в правом верхнем углу в PR, чтобы проголосовать за изменения в PR. По умолчанию используется параметр "Утвердить", но в раскрывающемся списке можно выбрать другие параметры:
- Утвердить: Утвердить предложенные изменения в PR.
- Утвердить предложения: утвердить pr, но укажите необязательные предложения для улучшения.
- Подождите автора: не утверждайте изменения и попросите автора просмотреть комментарии. Автор должен сообщить вам о повторном просмотре кода после решения проблем.
- Отклонение. Изменения недопустимы. Оставьте комментарий в PR, чтобы объяснить, почему.
- Сброс отзывов: удалите голос.
Завершите PR
Авторы PR могут выбрать параметр разрешения PR:
Завершено: завершите ПР сейчас, если все требуемые рецензенты одобрили его и соблюдена вся необходимая политика ветви.
Установите автоматическое завершение: автоматическое завершение запроса при утверждении всех необходимых рецензентов и всех обязательных политик ветви.
Пометка как черновик: установите для PR состояние черновика, чтобы указать, что он не готов для рецензии. Для черновика PR можно выбрать "Опубликовать ", чтобы удалить его состояние черновика и пометить его готовым к просмотру.
Отменить: закройте PR. Для заброшенного PR можно выбрать повторную активацию , чтобы восстановить ее.
Для получения дополнительной информации о завершении пул-реквеста см. в "Завершение пул-реквеста".