ایڈوانسڈ گٹ ٹیوٹوریل۔

ایڈوانسڈ گٹ ٹیوٹوریل۔

اپنے پروجیکٹ کو ریموٹ ریپوزٹری کے ذریعے تعینات کرنے سے آپ اس کے ہر حصے کو لچکدار طریقے سے سنبھال سکتے ہیں۔ بگ کی اصلاحات ، فیچر اپ ڈیٹس ، فائل ڈیلیٹ کرنا ، ٹیم ورک ، اوپن سورس شراکتیں ، کوڈ تعیناتی ، اور بہت کچھ اب گٹ کے مضبوط علم کے ساتھ آپ کی انگلی پر ہیں۔





تو ، آپ گٹ استعمال کر رہے ہیں لیکن مزید جاننا چاہتے ہیں؟ گٹ کے کچھ مزید ٹپس یہ ہیں جو آپ کے پروجیکٹ ورژن کو ہوا کا کنٹرول دے گی۔





گٹ برانچ۔

ایک گٹ برانچ آپ کو براہ راست ماسٹر برانچ کی طرف دھکیلنے سے روکتی ہے۔ اگر آپ ڈویلپرز کی ٹیم کے ساتھ کسی پروجیکٹ کا انتظام کرتے ہیں تو یہ مددگار ہے۔ آپ جتنی چاہیں گٹ شاخیں بنا سکتے ہیں اور پھر انہیں بعد میں ماسٹر برانچ میں ضم کر سکتے ہیں۔





گٹ برانچ بنائیں۔

گٹ برانچ بنانے کے لیے ، استعمال کریں:

git branch branch_name

گٹ برانچ میں جائیں۔

استعمال کریں۔ اس کو دیکھو گٹ برانچ میں جانے کے لیے:



git checkout branch_name

کسی برانچ میں تبدیل ہونے کے بعد ، آپ اپنی تبدیلیاں استعمال کرتے ہوئے اسٹیج کرسکتے ہیں۔ git add -all . پھر ان کا استعمال کرتے ہوئے گٹ کمٹ -ایم 'کمٹ نام' کمانڈ.

ماسٹر کے ساتھ ایک برانچ کا موازنہ کریں۔

کا استعمال کرتے ہیں git diff کمانڈ:





git diff master..branch_name

مخصوص فائلوں کا موازنہ کرنے کے لیے:

git diff master..testb -- main.html

دو شاخوں کا موازنہ اسی طرح ہے جیسے آپ کسی شاخ کا ماسٹر سے موازنہ کرتے ہیں۔





git diff branch1..branch2

دو شاخوں کے درمیان ایک مخصوص فائل میں فرق دیکھنے کے لیے:

git diff branch1..branch2 -- main.html

ریموٹ برانچ میں تبدیلیاں کریں۔

آپ چاہیں گے کہ کوئی دوسرا ڈویلپر اپنی مقامی برانچ میں فائل کو لائیو کرنے سے پہلے ان تبدیلیوں کو دیکھے۔ ایک اچھی مشق یہ ہے کہ آپ اپنی مقامی گٹ برانچ کو دور دراز کی نقل پر لے جائیں تاکہ وہ دیکھ سکیں۔

آئیے فرض کریں کہ آپ نے پہلے ایک مقامی برانچ بنائی ہے۔ تبدیلیاں . آپ اس مقامی برانچ میں سوئچ کر سکتے ہیں ، اپنی پسند کی تمام فائلوں کو ایڈجسٹ کر سکتے ہیں ، پھر اسٹیج کر سکتے ہیں اور انہیں اس برانچ میں بھیج سکتے ہیں۔

اس کے بعد آپ ان تبدیلیوں کو برانچ کے ریموٹ ورژن میں دھکیل سکتے ہیں۔

git push origin changes

ریموٹ برانچ کو ماسٹر کے ساتھ پل درخواست کا استعمال کرتے ہوئے ضم کریں۔

تو ایک اور پروگرامر نے ریموٹ برانچ میں تبدیلیوں کا آڈٹ کیا ہے ( تبدیلیاں ). لیکن آپ اسے ماسٹر برانچ کے ساتھ ضم کرنا چاہتے ہیں اور اسے براہ راست آگے بڑھانا چاہتے ہیں۔

یاد رکھیں کہ آپ کی ریموٹ برانچ آپ کی مقامی گٹ برانچ کا نام وراثت میں لیتی ہے ( تبدیلیاں ). تبدیلیوں کو ضم کرنے کا طریقہ یہاں ہے:

ماسٹر برانچ پر جائیں:

git checkout master

برانچ کی اصل یا سر کھینچیں ( تبدیلیاں ) اسے ماسٹر برانچ کے ساتھ ضم کرنا:

git pull origin changes

اس انضمام کو براہ راست ماسٹر برانچ پر دبائیں:

git push origin master

اس کے بجائے Git Merge استعمال کریں۔

ایک شاخ کو ماسٹر کے ساتھ ضم کرنے کے لیے جاؤ کمانڈ:

ماسٹر برانچ میں منتقل کریں:

git checkout master

اسے برانچ کے ساتھ ضم کریں ( تبدیلیاں ):

git merge changes

پھر انضمام کو براہ راست ماسٹر برانچ میں دبائیں:

مفت میں فلمیں دیکھنے کے لیے ایپ۔
git push origin master

اس بات کو یقینی بنائیں کہ آپ تبدیل کریں۔ تبدیلیاں اپنی برانچ کے نام کے ساتھ

ایک بار انضمام کامیاب ہونے کے بعد ، آپ پھر کر سکتے ہیں۔ مقامی اور دور سے برانچ کو حذف کریں۔ اگر آپ کو مزید ضرورت نہیں ہے:

متعلقہ: گٹ میں برانچ کا نام تبدیل کرنے کا طریقہ

گٹ ری بیس۔

اگر آپ کے پاس پرانے عہدوں کے ساتھ متعدد شاخیں ہیں تو ، آپ فوکس کو ری بیس یا ری فوکس کرسکتے ہیں۔ سر/ریف ان شاخوں میں سے سر/ریف ایک تازہ کاری شدہ کا.

جب آپ کو موجودہ شاخ کی بنیاد کے ساتھ کچھ شاخوں کو اپ ڈیٹ کرنے کی ضرورت ہوتی ہے تو ریسبنگ کام آتی ہے۔

ریبیسنگ بار بار کی کارروائی نہیں ہونی چاہیے ، اگرچہ ، خاص طور پر اگر آپ کسی ٹیم کے ساتھ کام کر رہے ہیں کیونکہ اس سے پورے ورک فلو میں خلل پڑ سکتا ہے۔ لیکن اگر آپ اکیلے کام کرتے ہیں اور آپ اپنے ورک فلو اور شاخوں سے واقف ہیں ، اگر آپ جانتے ہیں کہ اسے کہاں اور کیسے استعمال کرنا ہے تو ریباسنگ تباہی نہیں مچانا چاہئے۔

مثال کے طور پر ، فرض کریں کہ آپ کی دو شاخیں ہیں۔ برانچ 1 اور برانچ 2۔ اب ، آپ نے کچھ عرصے سے برانچ 1 میں کوئی تبدیلی نہیں کی ہے۔ لیکن آپ مستقل طور پر برانچ 2 میں تبدیلیاں کرتے ہیں ، بشمول حالیہ۔

لہذا آپ نے بہاؤ کے ساتھ برانچ 1 لے جانے کا فیصلہ کیا۔ لہذا برانچ 1 کو برانچ 2 پر بحال کرنا ، اس کا مطلب ہے کہ آپ برانچ 1 کو اس کے پچھلے وعدوں کو نظر انداز کرنے اور برانچ 2 کے ساتھ کیے گئے حالیہ عہد کو وراثت میں لینے کے لیے کہہ رہے ہیں۔

آپ یہ کیسے کر سکتے ہیں:

چھوڑ دی گئی شاخ پر جائیں (برانچ 1):

git checkout branch1

پھر برانچ 1 کو اپ ڈیٹ شدہ برانچ 2 پر ریبیس کریں:

git rebase branch2

گٹ اسکواش۔

گٹ اسکواش آپ کو ایک سے زیادہ کامٹس کو ایک میں ضم کرنے دیتا ہے۔ جب آپ چلاتے ہیں تو یہ مدد کرتا ہے۔ گٹ کمٹمنٹ ایک ہی اپ ڈیٹ پر کئی بار۔ ایک عملی مثال یہ ہے کہ جب کسی ایک خصوصیت کے لیے ہر بگ فکس یا کوڈ ریفیکٹر کا الگ کمٹمنٹ ہو۔

لیکن ہوسکتا ہے کہ آپ ساتھ والے کے ساتھ ہیڈ کمٹ کو آگے نہ بڑھانا چاہیں کیونکہ ان سب کا ایک ہی مقصد ہے۔ ایک تجویز کردہ نقطہ نظر یہ ہے کہ ٹریکنگ کے دوران الجھن سے بچنے کے لیے ان میں سے ایک کو اسکواش کریں۔

اسکواش کمیٹس کا بہترین طریقہ انٹرایکٹو ریبیس موڈ کے ذریعے ہے۔ اس کو بہتر طور پر سمجھنے کے لیے نیچے دی گئی مثال پر ایک نظر ڈالیں۔

اس مثال میں ، فرض کریں کہ آپ کے پاس پانچ بگ فکس ہیں۔ اور ان میں سے ہر ایک کے لیے ایک عہد ہے۔ یہ ہے کہ آپ ان پانچ وعدوں کو ایک میں کیسے اسکواش کرسکتے ہیں۔

رن git reflog اپنے ارتکاب کا ہیش کوڈ دیکھنے کے لیے:

git reflog

اس معاملے میں نتیجہ یہ ہے:

اب آپ کا مقصد آخری پانچ عہدوں کو اسکواش کرنا ہے۔ پہلے ٹھیک کریں تک پانچواں حل .

ایسا کرنے کے لیے ، کمٹمنٹ کے ہیش کوڈ کو نیچے کاپی کریں۔ پہلے ٹھیک کریں ( 0a83962 ). پھر دبائیں۔ س چھوڑنے کے لیے ریفلاگ .

اب چلائیں۔ git rebase -interactive اس ہیش پر

git rebase --interactive 0a83962

گٹ پھر ایک انٹرایکٹو ریبیس فائل کھولتا ہے جو اس طرح نظر آتی ہے:

کمیٹس کو اسکواش کرنے کے لیے ، کو چھوڑ کر۔ پہلے ٹھیک کریں ، تبدیل کریں چنیں کے ساتھ s ہر دوسرے کے لیے:

اس فائل کو محفوظ کریں اور بند کریں۔

اس کے بعد ایک اور فائل کھلتی ہے تاکہ آپ اسکوشڈ کمٹ کا نام بدل سکیں۔

سرفیس پرو پر اسکرین شاٹ کیسے لیں

ان کو صاف کریں اور اسکواشڈ کمٹمنٹ کے لیے ترجیحی نام ٹائپ کریں:

اس فائل کو محفوظ کریں۔ پھر اسے بند کریں اور آپ کو اپنے ٹرمینل میں کامیابی کا پیغام ملنا چاہیے۔

نوٹ: انٹرایکٹو فائل ٹرمینل کے اندر کھل سکتی ہے۔ لیکن اگر آپ ونڈوز پر ہیں تو ، آپ اپنے ٹرمینل کو عالمی سطح پر اپنے پسندیدہ ٹیکسٹ ایڈیٹر پر فائلیں کھولنے پر مجبور کرنا چاہیں گے تاکہ اسکواشنگ کو آسان بنایا جا سکے۔

ایسا کرنے کے لیے ، اپنی کمانڈ لائن کھولیں اور چلائیں:

git config --global core.editor ''path to choice text editor' -n -w'

گٹ فورک بمقابلہ گٹ کلون۔

گٹ میں فورکنگ اور کلوننگ دو مختلف اصطلاحات ہیں۔ آپ اپنے ذخیرے کو کانٹا نہیں بنا سکتے کیونکہ یہ پہلے ہی آپ کے ساتھ موجود ہے۔ تاہم ، آپ دوسرے لوگوں کے ذخیرے کو کانٹا بنا سکتے ہیں اور بعد میں اسے کلون کرسکتے ہیں۔

ذخیرہ کرنے کا مطلب یہ ہے کہ آپ کسی کے ذخیرے کی کاپی پکڑ کر اسے اپنا بنا رہے ہیں۔ ایک بار جب آپ کو اس ذخیرے کی ایک کاپی مل جاتی ہے ، تو آپ اسے کلون کرسکتے ہیں جیسے آپ مقامی تبدیلیوں کے لیے اپنے گٹ ذخیروں میں سے کوئی بھی کریں۔

یہاں طریقہ ہے۔ دور دراز کے ذخیرے کو کلون کریں۔ GitHub پر اور اپنی مقامی ڈائریکٹری میں ڈاؤن لوڈ شروع کریں:

git clone https://github.com/username/repository_name.git/

فائل کو اس کی ڈیفالٹ حالت میں بحال کریں۔

اگر آپ آخری کمٹمنٹ کے بعد کسی فائل میں ہونے والی تبدیلیوں کو صاف کرنا چاہتے ہیں تو آپ گٹ بحالی کمانڈ:

git restore filename

کمیٹ میں ترمیم کریں۔

اگر آپ کچھ فائلوں کو سٹیج کرتے وقت تبدیلیاں کرنا بھول جاتے ہیں تو آپ پچھلے عہد پر واپس آ سکتے ہیں۔

جس فائل کو آپ بھول گئے ہیں اس میں تبدیلیاں کریں۔ پھر استعمال کریں۔ گٹ ترمیم عہد کا جائزہ لینے کے لیے:

git add file_forgotten
git commit --amend

غیر اسٹیج فائلیں۔

آپ ان مخصوص فائلوں کو ہٹا سکتے ہیں جنہیں آپ نے کمٹمنٹ کے ذریعے اسٹیج کیا ہے۔ جاؤ rm کمانڈ:

git rm --cached filename

آپ ایک ساتھ کئی فائلیں بھی ہٹا سکتے ہیں:

git rm --cached file1 file2 file3 file4

جس فائل کو آپ چھوٹ دے رہے ہیں اس میں متعلقہ فائل کی توسیع شامل کرنا یاد رکھیں۔ مثال کے طور پر ، ایک سادہ ٹیکسٹ فائل ہونی چاہیے۔ filename.txt .

متعلقہ: گٹ کو کیسے صاف کریں اور بغیر ٹریک شدہ فائلوں کو کیسے ہٹا دیں۔

گٹ ری سیٹ۔

استعمال کرتے ہوئے۔ گٹ ری سیٹ مددگار ہے اگر آپ ان تمام فائلوں کو چھوڑنا چاہتے ہیں جو آپ نے ایک ہی وقت میں کمٹمنٹ کے لیے رکھی ہیں:

git reset

گٹ ری سیٹ ہیڈ ، تاہم ، ایک شاخ کے سر کو آپ کے کام کرنے والے درخت میں ایک مخصوص عہد کی طرف اشارہ کرتا ہے۔ مثال کے طور پر ، اگر آپ نے ابھی تک اپنے موجودہ عہد کو آگے نہیں بڑھایا ہے تو ، آپ حال ہی میں دھکیلے گئے عہد پر واپس آ سکتے ہیں:

git reset --soft HEAD~1

بدل دیں۔ -نرم کے ساتھ --سخت اگر آپ نے موجودہ عہد کو پہلے ہی دھکیل دیا ہے:

git reset --hard HEAD~1

واپس جائیں۔

کے برعکس۔ ری سیٹ کمانڈ، واپس جاؤ آپ کے عہد کی تاریخ کی سالمیت کو برقرار رکھتا ہے۔ اگر آپ غلطیوں یا کیڑے کی وجہ سے کسی عہد میں ترمیم کرنا چاہتے ہیں تو یہ آسان ہے۔

یہ ٹارگٹ کمٹمنٹ کو نہیں چھوڑتا ہے اور نہ ہی نیا بناتا ہے۔ اس کے بجائے ، یہ حالیہ تبدیلیوں کی طرف لوٹتا ہے جو آپ اس طرح کے عہد کو حذف یا نام تبدیل کیے بغیر کرتے ہیں۔ اپنے کاموں کو صاف ستھرا رکھنے کا یہ ایک بہترین طریقہ ہے ، نیز یہ ہر وقت ری سیٹ کرنے سے زیادہ محفوظ ہے۔

عہد پر واپس جانے کے لیے:

git revert HEAD~1

کہاں ہیڈ ~ 1۔ آپ کے کام کرنے والے درخت میں ایک مخصوص عہد کی طرف اشارہ کرتا ہے۔

ٹریک شدہ فائل یا ڈائریکٹری کو حذف کریں۔

آپ استعمال کر سکتے ہیں git rm -f اپنے کام کرنے والے درخت میں موجود ٹریک شدہ فائلوں کو حذف کریں۔ تاہم ، نوٹ کریں کہ گٹ بغیر ٹریک شدہ فائلوں کو نہیں ہٹا سکتا ، کیونکہ یہ ان کو کیش نہیں کرتا ہے۔

سٹیجڈ فائل کو حذف کرنے کے لیے:

git rm -f filename

سٹیجڈ فولڈر کو ہٹانے کے لیے:

git rm -r -f foldername

گٹ لاگنگ۔

گٹ میں اپنے کمٹمنٹ نوشتہ جات اور تاریخ دیکھنے کے لیے:

git log

ایک مخصوص شاخ میں سرگرمیوں کو لاگ ان کرنے کے لیے:

git log branch_name

متعلقہ: گٹ لاگ کے ساتھ کسی پروجیکٹ کی تاریخ کا معائنہ کیسے کریں۔

بعض اوقات آپ کسی ترک شدہ عہد پر واپس جانا چاہتے ہیں۔ لہذا ترک شدہ وعدوں کو دیکھنے کے لیے ، بشمول متعلقہ:

git reflog

کسی خاص برانچ کے لیے ریف لاگز دیکھنے کے لیے:

git reflog branch_name

اپنے پروجیکٹ ورژن کا انتظام گٹ کے ساتھ پرو کی طرح کریں۔

گٹ کے بہت سے فوائد کی پیشکش کے ساتھ ، آپ اپنی پروجیکٹ ریلیز کو اپنی مرکزی برانچ میں فائلوں اور فولڈروں کو بغیر کسی چوری کے دور سے سنبھال سکتے ہیں۔ مزید برآں ، یہ آپ کو ایک ٹیم کے ساتھ آسانی سے منصوبے چلانے دیتا ہے۔

جیسا کہ آپ نے دیکھا ہے ، گٹ میں بہت سی خصوصیات ہیں جن کو آپ دریافت کرسکتے ہیں۔ لیکن ان خصوصیات کو بامقصد استعمال کرنے میں محتاط رہیں۔ بصورت دیگر ، آپ چیزوں کو توڑ سکتے ہیں۔ اس نے کہا ، آپ اب بھی ایک ڈیمو ریموٹ مخزن کو گھما سکتے ہیں اور ان خصوصیات کے ساتھ ادھر ادھر کھیل سکتے ہیں۔

بانٹیں بانٹیں ٹویٹ ای میل۔ گٹ کے ساتھ ایک پروگرامر کی طرح اپنی فائل ورژننگ کا نظم کریں۔

پروگرامرز نے فائل ورژن کنٹرول کے مسائل کو حل کرنے کے لیے ورژن کنٹرول سسٹم (VCS) بنایا۔ آئیے آج ٹاپ سسٹم کا استعمال کرتے ہوئے ورژن کنٹرول کی بنیادی باتیں دیکھیں ، گٹ۔

اگلا پڑھیں۔
متعلقہ موضوعات۔
  • پروگرامنگ۔
  • ویب سازی
  • گٹ ہب۔
  • کوڈنگ ٹیوٹوریل
مصنف کے بارے میں ایدیسو اومیسولا۔(94 مضامین شائع ہوئے)

ادوو کسی بھی سمارٹ ٹیک اور پیداوری کے بارے میں پرجوش ہے۔ اپنے فارغ وقت میں ، وہ کوڈنگ کے ساتھ کھیلتا ہے اور جب وہ بور ہوتا ہے تو شطرنج بورڈ پر سوئچ کرتا ہے ، لیکن اسے تھوڑی دیر میں معمول سے الگ ہونا بھی پسند ہے۔ لوگوں کو جدید ٹیکنالوجی کے راستے دکھانے کا ان کا جذبہ انہیں مزید لکھنے کی ترغیب دیتا ہے۔

Idowu Omisola سے مزید

ہماری نیوز لیٹر کو سبسکرائب کریں

ٹیک ٹپس ، جائزے ، مفت ای بکس ، اور خصوصی سودوں کے لیے ہمارے نیوز لیٹر میں شامل ہوں!

سبسکرائب کرنے کے لیے یہاں کلک کریں۔