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
اور ضرورت پڑنے پر اسے آسانی سے اپ ڈیٹ کرنے کی اجازت دیتا ہے۔