استک پولریکوئستهای گیتهاب عمومی شد
خلاصهٔ کاملتر
گیتهاب تو چنجلاگ خودش اعلام کرده که قابلیت stacked pull requests وارد پیشنمایش عمومی شده. ایدهش سادهست: بهجای یه پولریکوئست غولپیکر که ریویوش کلی طول میکشه، تغییر بزرگ رو به یه زنجیرهی مرتب از PRهای کوچیک میشکنی که هرکدوم یه لایهی مشخص از کاره و روی لایهی زیرین خودش بیس میشه. دیگه لازم نیست کار رو بین چند برنچ پخش کنی و دستی ریبیسشون کنی.
سود اصلی سر ریویوئه: هر PR رو باز میکنی و فقط دیف همون لایه رو میبینی، و بالای صفحه یه نقشهی استک نشون میده این تیکه کجای کار بزرگتر میشینه. همتیمیها میتونن همزمان لایههای مختلف رو ریویو کنن بدون اینکه جلوی همدیگه رو بگیرن.
سر مرج هم دستت بازه: میتونی آخرین PR آماده رو مرج کنی تا خودش و همهی لایههای مرجنشدهی زیرش یکجا لند بشن، یا فقط چند لایهی پایینی رو ببندی — اونوقت PRهای بالایی باز میمونن و خودکار ریبیس و ریتارگت میشن. چون همهچیز داخل خود گیتهاب ساخته شده، ریویوها، چکها و برنچپروتکشنها همونطور که بودن جلوی رسیدن کد نامناسب به main رو میگیرن.
برای شروع افزونهی CLI رو با gh extension install github/gh-stack نصب میکنی، ولی کار با استکها روی github.com، اپ موبایل و حتی از طریق یه ایجنت کدنویسی مثل GitHub Copilot با اسکیل gh-stack هم ممکنه. قابلیت طی روزهای آینده روی همهی ریپازیتوریها میآد و پشتیبانی merge queue هفتههای بعد تدریجی اضافه میشه.
تو همین اعلان تجربهی چند تیم هم نقل شده: تیم Next.js تو ورسل میگه چند ماهه ازش استفاده میکنه و شکستن تغییرات بزرگ به تیکههای کوچیک ریویو رو راحتتر کرده. CTO شرکت TED هم میگه بهرهوری بیشتر با AI باعث شده PRها اونقدر بزرگ بشن که ریویوئرها کم بیارن، و استکها دقیقاً همین گلوگاه رو باز میکنن.
نکات کلیدی:
- stacked pull requests حالا تو پیشنمایش عمومی گیتهابه و طی روزهای آینده به همهی ریپوها میرسه
- تغییر بزرگ به یه زنجیرهی مرتب از PRهای کوچیک میشکنه که هرکدوم لایهی زیرین خودش رو تارگت میکنه
- هر لایه مستقل و موازی ریویو میشه و نقشهی استک جای اون تغییر رو تو کل کار نشون میده
- مرج انعطافپذیره: کل استک یکجا یا فقط لایههای پایینی؛ بقیه خودکار ریبیس و ریتارگت میشن
- ریویوها، چکها و برنچپروتکشنهای موجود بدون تغییر کار میکنن
- از طریق افزونهی gh-stack تو CLI، وب، اپ موبایل و Copilot در دسترسه؛ پشتیبانی merge queue تدریجی میآد




