منصوبے کے بارے میں
gh stack ایک GitHub CLI ایکسٹینشن ہے جو اسٹیک شدہ برانچز اور پل ریکوئسٹس کا انتظام کرتا ہے۔ اسٹیک شدہ PRs ایک بڑی تبدیلی کو چھوٹے، جائزہ لینے کے قابل پل ریکوئسٹس کی زنجیر میں تقسیم کرتے ہیں جو ایک دوسرے پر بنتے ہیں؛ یہ ٹول برانچ بنانے، برانچز کو ری بیسڈ رکھنے، درست PR بیس برانچز سیٹ کرنے، اور تہوں کے درمیان نیویگیشن کو خودکار بناتا ہے۔
انسٹالیشن `gh extension install github/gh-stack` کے ذریعے کی جاتی ہے اور اس کے لیے GitHub CLI v2.0+ درکار ہے۔ AI کوڈنگ ایجنٹس کے لیے ایک اختیاری اسکل انسٹال کی جا سکتی ہے۔
بنیادی ماڈل: ایک اسٹیک برانچز کی ترتیب شدہ فہرست ہے، ہر ایک اپنے نیچے والی برانچ پر مبنی ہے، اور سب سے نچلی برانچ ٹرنک برانچ (عام طور پر main) پر مبنی ہے۔ اسٹیک میٹاڈیٹا مقامی طور پر `.git/gh-stack` میں JSON کے طور پر محفوظ ہوتا ہے، اور ری بیس اسٹیٹ ایک الگ فائل میں ہوتی ہے۔
کمانڈز میں شامل ہیں:
- init: ایک اسٹیک شروع کریں، اختیاری طور پر موجودہ برانچز کو اپنائیں، قابل ترتیب ٹرنک کے ساتھ۔
- add: اسٹیک کے اوپر ایک نئی برانچ بنائیں، تبدیلیوں کو اسٹیج اور کمٹ کرنے کے اختیارات کے ساتھ۔
- checkout: اسٹیک نمبر، PR نمبر، PR URL، یا برانچ نام کے ذریعے اسٹیک چیک آؤٹ کریں، مقامی اور ریموٹ اسٹیکس کے لیے انٹرایکٹو پکر سمیت۔
- rebase: اسٹیک بھر میں فیچ اور کیسکیڈنگ ری بیسز، downstack/upstack/no-trunk اسکوپنگ اور continue/abort ہینڈلنگ کے ساتھ۔
- modify: برانچز کو ڈراپ، فولڈ، انسرٹ، رینیم، اور ری آرڈر کرنے کے لیے ایک انٹرایکٹو ٹرمینل UI۔
- sync: فیچ، ریموٹ اسٹیک کی مفاہمت، ٹرنک فاسٹ فارورڈ، کیسکیڈ ری بیس، پش، PR اسٹیٹ سنک، اسٹیک لنک، اور اختیاری طور پر مرج شدہ برانچز کی پرووننگ۔
- push: فی برانچ force-with-lease چیکس کے ساتھ ایکٹو برانچز پش کریں۔
- submit: برانچز پش کریں اور PRs اور GitHub اسٹیک بنائیں یا اپ ڈیٹ کریں، انٹرایکٹو ایڈیٹر یا آٹو موڈ کے ساتھ۔
- link: برانچ ناموں یا PR نمبروں سے GitHub اسٹیک بنائیں یا اپ ڈیٹ کریں بغیر مقامی ٹریکنگ کے، دیگر مقامی برانچ ٹولز کے ساتھ مفید۔
- merge: ایک یا زیادہ اسٹیک شدہ PRs کو all-or-nothing آپریشن میں مرج کریں، مرج میتھڈ آپشنز اور مرج کیو آگاہی کے ساتھ۔
- view: اسٹیک برانچز، ترتیب، PR لنکس، اور حالیہ کمٹس دکھائیں، مختصر اور JSON آؤٹ پٹ کے ساتھ۔
- unstack/delete: مقامی ٹریکنگ اور/یا GitHub سے اسٹیک ہٹائیں۔
- نیویگیشن کمانڈز (up, down, top, bottom) موجودہ اسٹیک میں برانچز کے درمیان منتقل ہوں۔
README میں فلیگز، مثالیں، پیش شرطیں، اور ڈائیورجنس ہینڈلنگ اور مرج کیو تعاملات جیسے رویوں کی تفصیل موجود ہے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.