Pull requests без боли. GitHub представил Stacked PRs — новый способ не сойти с ума во время проверки кода


wvv8z4hlqt1qx89evi4rrc4mdnryr84m.jpg

GitHub решил упростить жизнь разработчикам, которые устали продираться через огромные pull request с десятками файлов и длинными цепочками зависимостей. Платформа представила Stacked PRs , новый механизм для работы с взаимосвязанными запросами на слияние, который должен ускорить ревью и сделать крупные изменения более управляемыми.

Функция уже доступна в формате private preview. Stacked PRs позволяют строить цепочку pull request, где каждый следующий запрос опирается на предыдущий и образует стек. Каждый элемент такой цепочки можно проверять и сливать отдельно, если все pull request ниже по стеку уже попали в основную ветку. При желании GitHub позволяет объединить и весь стек целиком.

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

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