كيف يمكنني عرض التغييرات التي أجراها commit معين في Git؟

Git هو أحد أشهر أنظمة إدارة الإصدارات الموزعة والمفتوحة المصدر، ويستخدم على نطاق واسع لتتبع التعديلات على الملفات والعمل التعاوني في المشاريع البرمجية. إحدى الميزات الرئيسية في Git هي القدرة على عرض التغييرات التي تمت في كل commit. في هذه المقالة، سنتعرف على كيفية عرض التغييرات التي أجراها commit معين باستخدام أوامر Git المختلفة.

ما هو commit في Git؟

في Git، يمثل commit نقطة ثابتة في تاريخ المشروع. عندما تقوم بإجراء تغييرات على ملفات مشروعك ثم تضيف هذه التغييرات إلى منطقة staging باستخدام الأمر git add، يمكنك بعد ذلك إنشاء commit لتخزين تلك التغييرات بشكل دائم في مستودع Git. يحتوي كل commit على معرف فريد يُعرف باسم SHA-1 hash.

عرض التغييرات التي أجراها commit معين

لعرض التغييرات التي أجراها commit معين، يوفر Git العديد من الأوامر المفيدة. فيما يلي الطرق المختلفة التي يمكنك من خلالها القيام بذلك:

1. استخدام الأمر git show

الأمر git show هو الطريقة الأكثر شيوعًا لعرض التغييرات التي أجراها commit معين. يعرض هذا الأمر تفاصيل مثل الرسالة المرفقة بـcommit، اسم المؤلف، التاريخ، وقائمة التعديلات التي أجريت على الملفات.

git show [commit-hash]

على سبيل المثال، إذا كان معرف commit هو abc123، يمكنك استخدام الأمر التالي:

git show abc123

سيعرض الأمر تفاصيل التغييرات، مثل الإضافات (التي تظهر باللون الأخضر) والحذوفات (التي تظهر باللون الأحمر) في الملفات.

2. استخدام الأمر git diff

الأمر git diff يُستخدم لمقارنة الفروقات بين الحالات المختلفة في المستودع. لعرض التغييرات التي أجراها commit معين، يمكن استخدام الأمر التالي:

git diff [commit-hash]^ [commit-hash]

على سبيل المثال:

git diff abc123^ abc123

يُظهر هذا الأمر الفرق بين حالة المستودع قبل وبعد commit.

3. استخدام واجهة المستخدم التفاعلية git log -p

يمكنك عرض التغييرات التي أجراها كل commit في سجل المشروع باستخدام الخيار -p مع الأمر git log:

git log -p

سيعرض هذا الأمر قائمة بكل commits مع التغييرات التفصيلية التي أجريت في كل منها. إذا كنت مهتمًا بـcommit معين، يمكنك البحث عنه باستخدام معرفه أو الرسالة المرتبطة به.

4. عرض ملفات التغييرات فقط باستخدام git log --name-only

إذا كنت تريد فقط عرض قائمة الملفات التي تأثرت بـcommit معين، يمكنك استخدام الخيار --name-only:

git log --name-only -1 [commit-hash]

على سبيل المثال:

git log --name-only -1 abc123

يعرض هذا الأمر أسماء الملفات التي تم تعديلها في commit المحدد.

استراتيجيات إضافية لتحليل التغييرات

إلى جانب الأوامر الأساسية المذكورة أعلاه، هناك العديد من الأدوات والاستراتيجيات الأخرى التي يمكنك استخدامها لتحليل التغييرات التي أجراها commit:

1. استخدام أدوات الرسوميات

إذا كنت تفضل واجهات رسومية بدلاً من الأوامر النصية، يمكنك استخدام أدوات مثل GitKraken أو SourceTree أو حتى واجهة Git المدمجة في محررات النصوص مثل Visual Studio Code. تتيح هذه الأدوات عرض commits وفحص التغييرات بسهولة.

2. مقارنة بين فرعين مختلفين

في بعض الأحيان، قد تحتاج إلى مقارنة التغييرات بين فرعين مختلفين لمعرفة التغييرات التي تمت في سلسلة من commits. يمكنك استخدام الأمر التالي:

git diff branch1..branch2

يعرض هذا الأمر الفرق بين الفرعين، بما في ذلك التغييرات التي تمت في commits.

أفضل الممارسات عند العمل مع commits

للحصول على تجربة أفضل عند العمل مع Git وتحليل التغييرات، يُفضل الالتزام بالممارسات التالية:

  • استخدم رسائل واضحة ومفهومة عند إنشاء commit.
  • قم بتقسيم التعديلات الكبيرة إلى commits أصغر ليسهل تتبع التغييرات.
  • تعلم الأوامر الأساسية في Git لتوفير الوقت وزيادة الكفاءة.

الخلاصة

عرض التغييرات التي أجراها commit معين في Git هو عملية سهلة ومباشرة باستخدام الأوامر المناسبة مثل git show وgit diff. سواء كنت تفضل واجهات الأوامر النصية أو الأدوات الرسومية، فإن Git يقدم لك مرونة كبيرة في تحليل تاريخ مشروعك وتتبع التعديلات. باتباع هذه الإرشادات، يمكنك تحسين كفاءتك في العمل مع Git وضمان إدارة إصدارات مشروعك بفعالية.