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

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

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





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





ڈیفالٹ رویے کے ساتھ بنیادی لاگنگ۔

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





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

یہاں سے کچھ گٹ لاگ آؤٹ پٹ ہے۔ گٹ سورس کوڈ کا ذخیرہ۔ خود:



commit 670b81a890388c60b7032a4f5b879f2ece8c4558 (HEAD -> master, origin/next,
origin/master, origin/HEAD)
Author: Junio C Hamano
Date: Mon Jun 14 13:23:28 2021 +0900
The second batch
Signed-off-by: Junio C Hamano

نتیجہ کمٹ ہیش سے شروع ہوتا ہے ( 670۔ ...) اس کے بعد شاخوں کی فہرست جو فی الحال اس عہد کی طرف اشارہ کرتی ہے ( ہیڈ -> ماسٹر۔ ، وغیرہ)

سم کارڈ کا بندوبست نہیں ملی میٹر#2۔

اگلی سطر اس عہد کے مصنف کو بیان کرتی ہے ، ان کا نام اور ای میل پتہ۔





ارتکاب کی مکمل تاریخ اور وقت اگلی لائن پر عمل کریں۔

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





  • فارمیٹنگ ، جو اس بات کی وضاحت کرتی ہے کہ گٹ ہر عہد کو کیسے دکھاتا ہے۔
  • فلٹرنگ ، جو اس بات کی وضاحت کرتی ہے کہ کون سا ارتکاب کرتا ہے۔ گٹ لاگ شامل.

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

فارمیٹنگ گٹ لاگ آؤٹ پٹ۔

سب سے آسان ایڈجسٹمنٹ میں سے ایک ہے --ایک لکیر آپشن جو بہت مختصر آؤٹ پٹ تیار کرتا ہے:

git log --oneline

لاگ میں ہر لائن میں اب صرف ایک مختصر کمٹ ہیش اور کمٹ میسج کا موضوع شامل ہے۔ اس منصوبے کے حالیہ وعدوں کا جائزہ لینے کا یہ ایک بہترین طریقہ ہے:

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

ایک برانچ گراف دیکھنا۔

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

git log --oneline --graph

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

اپنی مرضی کے مطابق خوبصورت آؤٹ پٹ۔

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

PS4 پر صارف کو کیسے حذف کریں۔
git log --pretty=short

بنیادی طور پر ایک جیسا ہے۔ گٹ لاگ تاریخ یا مکمل پیغام کے بغیر:

git log --pretty=oneline

کے برابر ہے۔ git log -آن لائن۔ .

git log --pretty=fuller

بہت ساری تفصیل شامل ہے۔ یہاں تک کہ یہ مصنف اور ارتکاب کرنے والے کو الگ کرتا ہے جو کہ نظریاتی طور پر مختلف لوگ ہو سکتے ہیں۔

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

  • ٪ H ہیش کا ارتکاب
  • ٪ h کمٹ ہیش
  • ٪ سے مصنف کی تاریخ
  • کے ساتھ مصنف کی تاریخ ، رشتہ دار
  • ٪ s پیغام کا موضوع
  • ٪ b کمیٹ میسج باڈی۔
  • ٪ p مختصر والدین کی ہیش

آپ آؤٹ پٹ میں فکسڈ کریکٹر شامل کر سکتے ہیں اور اسے رنگین بنا سکتے ہیں۔ یہ مثال تاریخ کی شکل میں ایک تغیر بھی دکھاتی ہے:

git log --pretty=format:'%C(auto) %h [%ad] %s' --date=short

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

لاگ میں فرق دکھا رہا ہے۔

ذخیرہ کی تاریخ کو دیکھتے وقت ایک اہم تفصیل خود اختلافات ہیں۔ وہ نمائندگی کرتے ہیں کہ اصل میں کوڈ میں کیا تبدیل ہوا ہے! شروع کرنے والوں کے لیے ، آپ ہر ارتکاب کا استعمال کرتے ہوئے تبدیلیوں کا خلاصہ حاصل کر سکتے ہیں۔ -شارٹ سٹیٹ :

git log --shortstat

یہ ایک لائن کا اضافہ کرتا ہے جیسے:

1 file changed, 48 insertions(+), 2 deletions(-)

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

git log -p

فلٹرنگ گٹ لاگ آؤٹ پٹ۔

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

رقم کے لحاظ سے پابندی

اگر آپ صرف حالیہ چند وعدوں کو ظاہر کرنے کے لیے نتائج کو تراشنا چاہتے ہیں تو ، -[نمبر] نحو:

git log -2

تاریخ کے لحاظ سے پابندی

کمٹ کے سیٹ کو دی گئی تاریخ کی حد تک محدود کرنے کے لیے ، استعمال کریں۔ -چونکہ ( -بعد میں ) اور -جب تک ( -پہلے ) اختیارات. یہ ہر ایک ISO 8601 فارمیٹ میں ایک تاریخ لیتا ہے۔ آپ یا تو استعمال کر سکتے ہیں۔ -چونکہ یا -جب تک اپنے طور پر ، یا دونوں مل کر ایک رینج کی وضاحت کریں۔ اختیارات۔ -بعد میں اور -پہلے مترادفات ہیں

git log --since='2021-01-01' --until='2021-05-01'

فائل کے ذریعے پابندی

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

git log filename

آپ کو صرف وہی کمیٹس نظر آئیں گے جو متاثر ہوئے ہیں۔ فائل کا نام .

شاخوں کے درمیان فرق

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

  1. وہ کمیٹس دیکھیں جو مرکزی ہیں ، لیکن شاخ میں نہیں ہیں: | _+_ |
  2. کمٹ دیکھیں جو شاخ میں ہیں ، لیکن اہم نہیں: | _+_ |
  3. کمٹ دیکھیں جو صرف برانچ یا مین میں موجود ہیں: | _+_ |

دو ٹیگز کے درمیان فرق

جس طرح آپ شاخوں کے درمیان تاریخ کو دیکھ سکتے ہیں ref1..ref2 نحو ، آپ ٹیگز کے درمیان بھی اسی طرح تاریخ دیکھ سکتے ہیں۔ بہر حال ، دونوں ٹیگ اور شاخیں حوالہ کی اقسام ہیں۔

git log --oneline origin/branch..origin/main

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

git log --oneline origin/ main ..origin/ branch

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

گٹ لاگ کے ساتھ ماضی کا جائزہ لیں۔

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

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

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

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

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

بوبی جیک سے مزید

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

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

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