слов.арь · bisovka

объясни pull-request --простыми-словами

Иллюстрация к термину «Пул-реквест»

Пул-реквест

КороткоПредложенное изменение, вынесенное на ревью.

Бывало, что ты оставляешь комментарий в чужом Google Doc вместо того, чтобы просто переписать абзац? Выделяешь строку, предлагаешь правку и ждешь, пока человек нажмет "принять". Реальный документ ты не трогал. Ты предложил изменение и дал человеку решить.

Это и есть пул-реквест. Только в софте.

Помнишь ветки — те параллельные вселенные, где ты собираешь рискованную идею в стороне, не трогая рабочую версию? В какой-то момент эта ветка готова, и ты хочешь вернуть ее в настоящий продукт (версию, которую почти всегда называют "main"). Ты не запихиваешь ее туда напрямую. Ты поднимаешь руку: "Я сделал это в своей ветке. Вот ровно что я поменял, строка за строкой. Пусть кто-нибудь посмотрит, прежде чем оно попадет в прод." Эта поднятая рука и есть пул-реквест. Коротко PR.

Почему не влить сразу? Потому что "я что-то поменял" и "я официально предлагаю изменение на ревью" — две совершенно разные вещи, и расстояние между ними как раз помогает софту не разваливаться постоянно.

PR — это место, где проверки безопасности проходят до того, как что-то доберется до настоящих пользователей:

  1. Люди это читают. Коллеги оставляют комментарии прямо на строках, которые их тревожат. "Зачем ты это удалил?" "Это сломает оплату." Вы обсуждаете, пока не станет нормально.
  2. Тесты запускаются сами. Как только ты открываешь PR, проект автоматически гоняет проверки, чтобы убедиться, что ты ничего не сломал. Зеленый цвет — можно ехать.
  3. Ничего не вливается, пока кто-то не скажет да. В этом весь смысл. Изменение сидит в комнате ожидания, полностью на виду, пока его не одобрят.

И вот так совершенно посторонний человек улучшает инструмент, которым не владеет. Он находит проект на GitHub, копирует его, чинит баг, который его раздражал, и открывает PR обратно в оригинал. Человек, который ведет проект, читает его и, если все хорошо, вливает. У этого незнакомца не было пароля или особого доступа. PR был входной дверью, а ревью — охраной на входе. Я теперь постоянно так делаю с инструментами, которыми пользуюсь. Увидел поломку, починил, отправил PR.

Вот что стоит запомнить: PR — не бюрократия, а след в истории. Через месяцы любой сможет открыть ровно это изменение и увидеть, что сдвинулось, кто это одобрил и почему. Когда AI-агент что-то для тебя строит, он тоже может открыть PR, чтобы ты (или коллега) быстро посмотрел работу до того, как она коснется main.

Предложи правку. Дай кому-то нажать "принять". Потом это становится настоящим.

← все термины