Гайд · TNWS AI
Как включить повторный Copilot review после каждого push
Настройка Review new pushes для GitHub Copilot Code Review в branch ruleset: область веток, тест двумя commit, проверка повторного ревью и контроль шума.
Задача и применимость
Цель — автоматически повторять Copilot review после новых push в уже открытый pull request. Руководство рассчитано на репозиториев с итеративными PR, где замечания исправляются несколькими commit и ручной re-request забывают выполнить. Успех здесь означает наблюдаемое состояние: сработавший ruleset, корректный scope веток, прочитанная инструкция, использованное окружение или comments в ожидаемой группе изменений. Текст модели без внешней проверки успехом не считается.
Интерфейс, команды, названия файлов и доступность сверены 13 сентября 2026 года по официальной документации GitHub. Цены и универсальные лимиты не приводятся. Любая доступность зависит от плана, policy и прав пользователя; если пункт отсутствует, не имитируйте его альтернативным write-действием.
Подтверждённая механика
В branch ruleset опция Review new pushes доступна рядом с Automatically request Copilot code review. Если она не выбрана, GitHub прямо указывает, что Copilot проверит PR только один раз.
Точные имена важны: Review new pushes отвечает за повторные циклы, Review draft pull requests — за статус PR, а Review effort level — за глубину. Аналогично, .github/copilot-instructions.md, path-specific instructions и AGENTS.md имеют разные scopes.
Что подготовить до настройки
Запишите OWNER/REPO, target branch, текущий status настройки и критерий отката. Создайте test branch, где нет секретов и production-изменений. Для инструкции подготовьте одно безопасное нарушение правила, которое потом удалите; для окружения — workflow, проверяемый вручную через Actions.
До любого сохранения сделайте screenshot или текстовую запись исходного значения. Это особенно важно для ruleset: ошибка target может распространить review на большее число PR, а дублирующее правило создаст шум. Проверяйте не только включённый checkbox, но и scope.
Готовый шаблон
Automatically request Copilot code review: enabled
Review new pushes: enabled
Target branches: Include default branch
Шаблон — стартовая точка. Замените repository, ветки и инварианты на реальные. Не вставляйте tokens, private URLs и персональные данные. Конфигурационные Markdown/YAML-файлы являются управляющим кодом: их нужно читать в diff и проводить через review.
Пошаговые действия
-
Откройте repository Settings → Rulesets → Rulesets и выберите существующий branch ruleset либо создайте новый.
-
Проверьте target branches: повторные review будут применяться только в этом scope.
-
Убедитесь, что включено Automatically request Copilot code review. Без базового правила дополнительная опция не решает задачу.
-
Выберите Review new pushes и сохраните или создайте ruleset.
-
Создайте test PR с первым commit и дождитесь первоначального review.
-
Добавьте второй небольшой commit, исправляющий одно замечание, и push в ту же head branch.
-
Проверьте timeline PR: должен появиться новый цикл review после push. Сравните, какие строки относятся к новому diff.
-
Оцените шум. Если каждый технический push создаёт лишние reviews, измените workflow команды или отключите опцию.
После каждого шага фиксируйте независимый признак: ruleset Active, target branch совпадает, workflow зелёный, comment привязан к ожидаемому файлу. Если признак отсутствует, остановитесь до следующего write-действия.
Готовый промпт
Повторно проверь только изменения после последнего review. Убедись, что исправлен null-case и не появились регрессии в соседних тестах.
Промпт должен усиливать конфигурацию, а не заменять её. Укажите scope, инварианты и формат доказательства. Просите сценарий отказа и тест, а не абстрактное «улучшить качество». Для draft или частичного diff явно перечисляйте незавершённые части.
Реалистичный пример входа и результата
Вход: После первого review в PR добавлен второй commit с обработкой null и новым unit test.
Ожидаемый результат: Copilot автоматически выполняет повторную проверку после push; автор отличает новые замечания от закрытых и подтверждает исправление тестом.
Проверяйте результат по GitHub UI, timeline, Actions log, session attribution, Reviewed Changes или локальному diff. Количество комментариев не является метрикой качества. Полезное замечание указывает конкретный код, воспроизводимый риск и проверку.
Контрольный эксперимент
Хорошая настройка проверяется двумя примерами. Положительный должен попасть в scope и запустить нужное поведение. Отрицательный — не должен: другая branch, несовпадающий path, unstaged файл или PR без нового push. Такая пара обнаруживает слишком широкий glob и неверный target.
Не создавайте искусственную уязвимость в production-коде. Используйте изолированный test fixture или безопасный логический дефект, который сразу удаляется. Результат эксперимента зафиксируйте в PR description, затем очистите временный код до merge.
Сохраните короткий протокол эксперимента: дата, commit SHA, выбранный scope, ожидаемое и фактическое поведение. Он помогает отличить случайный успешный запуск от воспроизводимой настройки и упрощает повторную проверку после обновления GitHub. Не включайте в протокол содержимое закрытых комментариев, секреты или данные пользователей.
Как оценить качество review
Разделите комментарии на подтверждённые, спорные и нерелевантные. Для подтверждённого создайте тест до исправления. Для спорного найдите документацию или владельца подсистемы. Нерелевантное замечание отклоните, но проверьте, не виновата ли слишком общая инструкция.
После принятой suggestion перечитайте полный diff: локальная кнопка или web suggestion может внести корректный фрагмент, но не проверить соседний код. Запустите обязательные tests, lint и build из репозитория. Copilot review — дополнительный слой, не замена CI и человеческому approval.
Типовые ошибки
- Опция без Automatically request Copilot code review не образует полный workflow.
- Force-push и серия мелких push могут создавать трудно читаемый журнал; согласуйте стратегию commit.
- Повторный review не означает автоматическое закрытие человеческих обсуждений.
Если настройка не сработала, сначала проверяйте scope, branch, head/base, enforcement status и права. Не переключайте сразу несколько флагов: иначе невозможно понять причину. Меняйте одну переменную и повторяйте контрольный experiment.
Безопасность и поддержка
Rulesets и instructions могут влиять на всю команду, поэтому используйте принцип минимального scope. Workflow получает только нужные permissions. В инструкции нельзя включать секреты или предлагать чтение приватных данных. MCP context и внешние tools требуют отдельной оценки доверия.
Раз в квартал или после крупного обновления повторяйте test PR: UI и поведение меняются. В самом документе команды храните дату проверки и ссылку на официальный источник, а не неподтверждённые скриншоты.
Чек-лист финальной проверки
- Названия меню, файлов и опций сверены 13 сентября 2026 года.
- OWNER/REPO, target branch и scope указаны явно.
- Ruleset имеет ожидаемый Enforcement Status.
- Положительный test case запустил нужный review.
- Отрицательный test case не попал в scope.
- В YAML/Markdown нет секретов и внутренних credentials.
- Suggestions проверены полным diff и тестами.
- Human approvals и branch protection не ослаблены случайно.
- Есть понятный способ отката настройки.
FAQ
Что будет без Review new pushes?
По официальной документации Copilot проверит pull request только один раз.
Нужен ли ручной re-request?
При включённой опции новые push запускают review автоматически; состояние всё равно проверяйте в timeline.
Где находится флажок?
В branch ruleset рядом с правилом автоматического Copilot review.
Можно ли включить не для всех веток?
Да, scope задаётся через Target branches ruleset.
Официальный первоисточник
Источник и изменяемые детали проверены 13 сентября 2026 года. Перед повторением после обновления GitHub или IDE снова откройте ссылку и сравните точные имена пунктов.
Читайте также
Как архивировать остановленную сессию Copilot cloud agent
Пошаговое архивирование stopped-сессии Copilot cloud agent без потери pushed commits и с предварительной проверкой pull request.
Как авторизовать Copilot CLI через fine-grained PAT в CI
Настройка fine-grained PAT для GitHub Copilot CLI в CI: Copilot Requests, Repository access, COPILOT_GITHUB_TOKEN, маскирование и проверка без утечки.
Как добавить Copilot reviewer в существующий PR через gh CLI
Добавление GitHub Copilot в существующий pull request командой gh pr edit PR-NUMBER --add-reviewer @copilot с проверкой репозитория и результата.
Комментарии
Пока тихо. Скажите первое слово