عرض السجلّ
git log
يعرض الـ commits على الفرع الحالي من الأحدث للأقدم: الـ hash، والكاتب، والتاريخ، والرسالة. لو السجلّ طويل يفتح في عارض صفحات: تنقّل بالأسهم واطلع بـ q.
صيغ مختصرة ومفيدة
git log --oneline # سطر لكل commit: hash مختصر + الرسالة
git log --oneline --graph --all # رسم بياني لكل الفروع معًا
git log -n 5 # آخر 5 commits
git log --author="اسم" # حسب الكاتب
git log --grep="login" # commits في رسالتها كلمة login
git log -- file.txt # الـ commits التي لمست هذا الملف فقط
git log -p file.txt # نفس السابق مع التغييرات نفسها
--oneline --graph --all أشهر تركيبة: ترى كل الفروع ونقاط الدمج دفعة واحدة:
* 5ffa963 دمج feature-login
|\
| * 82011a5 إضافة صفحة الدخول
* | ce722e5 إصلاح العنوان
|/
* 1f3d094 الإصدار الأول
تفاصيل commit واحد
git show <hash>
يعرض التغييرات الكاملة لذلك الـ commit.
من غيّر هذا السطر؟
git blame file.txt
يبيّن من كتب كل سطر وفي أي commit.
معرّف الـ commit (hash)
كل commit له بصمة فريدة (SHA). يكفي أول 7 أحرف للإشارة إليه.
أخطاء شائعة
- البحث في
git logعن ملفات لم تحفظها بعد:logيعرض الـ commits فقط. لحالة مجلّد العمل الآن (ما تغيّر ولم يُحفظ) استخدمgit status. - ظنّ أن
git logيعرض كل الفروع: بدون--allيعرض تاريخ الفرع الحالي فقط، فلا ترى commits فرع زميلك حتى لو جلبتها.
🎯 التالي: مقارنة التغييرات (git diff).