Git Submodule: انحصار کا انتظام اور سب ریپوزٹریز کو مربوط کرنا

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

 

شامل کریں۔ Submodule

موجودہ ریپوزٹری میں شامل کرنے کے لیے Submodule ، ریپوزٹری کی روٹ ڈائرکٹری پر جائیں اور درج ذیل کمانڈ کو چلائیں:

git submodule add <URL_repository> <destination_path>

<URL_repository> ریپوزٹری کا URL کہاں ہے جسے آپ ایمبیڈ کرنا چاہتے ہیں، اور <destination_path> موجودہ ریپوزٹری میں سب ڈائرکٹری کا راستہ ہے Submodule

 

کلون Submodule

ایک بار جب آپ ریپوزٹری میں شامل کر لیتے ہیں Submodule ، تو آپ کو اسے موجودہ ریپوزٹری میں کلون کرنے کی ضرورت ہوتی ہے۔ کلون کرنے کے لیے Submodule ، درج ذیل کمانڈز چلائیں:

git submodule init  
git submodule update  

کمانڈ git submodule init کو شروع کرتا ہے Submodule اور سب موڈیول پر مشتمل ریپوزٹری کا لنک بناتا ہے۔ کمانڈ git submodule update کا سورس کوڈ ڈاؤن لوڈ کرتا ہے Submodule اور اسے متعلقہ ذیلی ڈائرکٹری میں اپ ڈیٹ کرتا ہے۔

.

کام کے ساتھ Submodule

ایک بار Submodule ریپوزٹری میں کلون ہو جانے کے بعد، آپ اس کے ساتھ ایک آزاد گٹ ریپوزٹری کے طور پر کام کر سکتے ہیں۔ آپ شاخوں کو چیک آؤٹ کر سکتے ہیں، بنا سکتے ہیں commits ، اور کے اندر دھکیل سکتے ہیں Submodule ۔

موجودہ ریپوزٹری میں سب موڈیول کو اپ ڈیٹ کرنے کے لیے، کمانڈ چلائیں:

git submodule update --remote

یہ کمانڈ ریپوزٹری سے تازہ ترین تبدیلیوں کو ڈاؤن لوڈ کرتا ہے Submodule اور اسے متعلقہ ذیلی ڈائرکٹری میں اپ ڈیٹ کرتا ہے۔

 

دور Submodule

اگر آپ کو مزید ضرورت نہیں ہے تو Submodule ، آپ درج ذیل کمانڈز چلا کر اسے ہٹا سکتے ہیں۔

git submodule deinit <submodule_name>  
git rm <submodule_path>  

<submodule_name> کے نام کے ساتھ Submodule اور <submodule_path> ذیلی ڈائرکٹری کے راستے کے ساتھ تبدیل کریں جس میں Submodule. پھر، آپ کو اس تبدیلی کا ارتکاب اور آگے بڑھانے کی ضرورت ہے۔

 

Git Submodule انحصار کو منظم کرنے اور ذیلی ذخیرے کو اپنے مرکزی پروجیکٹ میں آسانی سے ضم کرنے میں آپ کی مدد کرتا ہے۔ یہ آپ کو علیحدہ سورس کوڈ کو برقرار رکھنے Submodule اور ضرورت پڑنے پر اسے آسانی سے اپ ڈیٹ کرنے کی اجازت دیتا ہے۔