Lazygit
نشط ومستقريعمل محلياً ✓بدون اشتراك APIراجع تغييرات Git وجهّز أسطرًا محددة وأنشئ worktrees للفروع من واجهة طرفية تفاعلية، لتسجل تغييرات واضحة قابلة للمراجعة.
brew install lazygitالاستخدام المثالي لهذه الأداة
تناسب مطورًا أو فريقًا صغيرًا يعمل من الطرفية ويريد مراجعة التغييرات وفصل المهام في التزامات واضحة. تساعده على اختيار ما يحفظه وفتح فرع آخر في مجلد مستقل دون خلط ملفات العمل. لا تستبدل الاختبارات أو فهم Git؛ وقد تكفيك واجهة المحرر إذا كانت تلبي حاجتك.
التفاصيل والميزات المصورة
تنتهي من تعديل مشروعك، ثم تكتشف أن الملف نفسه يحتوي إصلاحًا مطلوبًا وتجربة لم تعتمدها بعد. حفظ الملف كله في commit واحد يجعل مراجعة العمل أو التراجع عنه أصعب. Lazygit واجهة تفاعلية داخل الطرفية لأوامر Git: ترى التغييرات، تختار ما تحفظه، وتراجع الفروع والتاريخ دون إعادة كتابة سلسلة أوامر في كل مرة. قيمتها تنظيم قراراتك حول الكود؛ لا تفحص صحة الميزة ولا تتخذ قرار الدمج بدلًا منك.
🧭 ما Lazygit وكيف تعمل؟
Lazygit مشروع مفتوح المصدر بدأه Jesse Duffield، ويعرض مستودع Git في لوحات للملفات والفروع والالتزامات وغيرها. الطرفية هي نافذة الأوامر، والواجهة التفاعلية تعني أنك تتحرك بين العناصر وتنفذ الإجراء باختصار لوحة مفاتيح. يستمر Git في تخزين التاريخ وتنفيذ عملياته؛ الأداة تقدم طريقة أخرى للتعامل معه، ولا تنشئ نظام إصدارات مستقلًا.
ستقابل ثلاثة مفاهيم: مجلد العمل هو ملفاتك الحالية، ومنطقة التجهيز Staging هي التغييرات التي اخترتها للالتزام التالي، وCommit هو لقطة مسجلة برسالة في تاريخ Git. الفصل بينها مهم: حفظ الملف في المحرر لا يعني تسجيله في Git، وتسجيله محليًا لا يعني رفعه إلى GitHub. تتيح لك Lazygit رؤية هذه المراحل وفحص الاختيار قبل اعتماده.

رسم توضيحي أصلي، وليس لقطة لواجهة Lazygit. العربية شرح مضاف ولا تثبت وجود واجهة عربية رسمية.
🎯 كيف ستفيدك عمليًا؟
تناسب مطورًا منفردًا أو فريقًا صغيرًا يستخدم Git يوميًا ويريد مراجعة عمله دون مغادرة الطرفية. إذا كتب وكيل برمجة تغييرات في ملفات متعددة، افتح المستودع وافحص الفروقات قبل تسجيلها. تستطيع فصل إصلاح الدخول عن تنسيق الألوان، ثم إعطاء كل تغيير رسالة واضحة. هذه ممارسة مراجعة بشرية؛ Lazygit نفسها ليست وكيل AI ولا تحتاج مفتاح نموذج.
القيمة المضافة هي إبقاء قائمة الملفات والفروق والسجل قريبًا من قرار الحفظ. عندما يصل إصلاح عاجل أثناء العمل على ميزة، تساعدك worktrees على فتح الفرع الآخر في مجلد مستقل. وعندما تحتاج فهم التغيير السابق، تستطيع تصفح سجل الالتزامات ومقارنة مراجع مختلفة. تظل بحاجة لاختبارات مشروعك ومعرفة معنى الإجراءات التي تختارها.
🌟 الميزات وطريقة استخدامها
1. جهّز أسطرًا محددة بدل حفظ الملف كله
قد يجمع الملف تغييرات تخص مهمتين. تسمح الأداة بتجهيز مقطع متصل من الفروق، يسمى hunk، أو أسطر مختارة منه. فائدة ذلك إنشاء التزام يشرح مهمة واحدة ويمكن مراجعته لاحقًا دون خلطه بالتجارب الجانبية.
- أين تجدها: لوحة الملفات وعرض الفروقات. يعرض
?الاختصارات المتاحة في السياق الحالي. - كيف تستخدمها: اختر ملفًا متغيرًا واضغط
0لتركيز عرض الفروق. يبدأ التحديد على مستوى المقطع؛ استخدمaللاختيار سطرًا بسطر وvلتحديد نطاق. يجهزSpaceالجزء المحدد. يعرض الجزء السفلي التغييرات المجهزة، وTabينتقل بين الجزأين. - مثال توضيحي: اختر أسطر إصلاح تسجيل الدخول واترك تجربة الألوان غير مجهزة. راجع الجزء المجهز ثم استخدم
cلكتابة رسالة الالتزام. في لوحة الملفات نفسها يبدلSpaceتجهيز الملف المحدد؛ معنى الاختصار يتبع اللوحة التي تركز عليها. - القيد: فصل الأسطر لا يثبت أنها تعمل وحدها. قد يعتمد الإصلاح على استيراد أو إعداد في مكان آخر؛ راجع الترابط وشغّل الاختبارات قبل اعتماد التقسيم. ولا تستخدم إجراء تجاهل التغيير لمجرد أنك لا تريد إدخاله في هذا الالتزام؛ يمكنك تركه غير مجهز.

رسم توضيحي لمثال غير منفذ. الاختصارات وفق وثائق الإصدار المتحقق، وقد تتغير إذا خصصت إعداداتك.
2. افتح فرعًا آخر في مجلد مستقل باستخدام Worktrees
الفرع اسم يشير إلى سلسلة التزامات؛ أما worktree فهو مجلد ملفات مرتبط بمستودع Git ويمكنه العمل على فرع آخر. لا تحتاج بذلك إلى تبديل ملفات المجلد الحالي كلما انتقلت بين ميزة وإصلاح عاجل. تتشارك المجلدات بيانات المستودع، ولكل مجلد ملفات عمله ومنطقة تجهيزه.
- أين تجدها: عرض الفروع؛ يذكر README الاختصار
wلإنشاء worktree من الفرع المحدد والانتقال إليه. - كيف تستخدمها: اختر فرع الإصلاح، افتح إجراء إنشاء worktree، وحدد المسار المطلوب. تأكد من اسم الفرع ومسار المجلد قبل تحرير الملفات. اترك الميزة في مجلدها، واعمل على الإصلاح في المجلد الجديد.
- مثال توضيحي: تستمر
feature/bookingفي مجلد الميزة، بينما تراجعfix/loginفي مجلد آخر. تحتاج إلى تثبيت اعتماديات المشروع أو توفير إعداداته في المجلد الجديد بحسب تصميم المشروع؛ إنشاء المجلد لا يفعل ذلك تلقائيًا. - القيد: هذا فصل لملفات العمل، وليس آلة افتراضية أو بيئة أمان. قد تتداخل خوادم التطوير إذا استعملت المنفذ نفسه، وقد يشترك الفرعان في قاعدة بيانات خارجية. لا تتوقع أن يسمح Git باستخدام الفرع نفسه في عدة worktrees بالطريقة العادية، ولا تحذف مجلدًا قبل مراجعة تغييراته.

رسم يشرح العلاقة بين المجلدات والمستودع، وليس مخطط شبكة أو قياسًا للأداء.
3. افهم ما يستطيع Undo التراجع عنه
تقدم Lazygit التراجع z وإعادة الإجراء Shift+z. تعتمد الآلية على reflog، وهو سجل Git المحلي لحركة مراجع الالتزامات والفروع. لذلك قد يساعدك التراجع في إجراء يتعلق بالالتزامات، لكنه لا يمثل نسخة احتياطية لكل ملف على جهازك.
- أين تجدها: الاختصارات العامة وقائمة المساعدة
?. - كيف تستخدمها: افهم الإجراء الذي نفذته، ثم راجع عملية التراجع المقترحة والحالة الناتجة. إذا كنت وسط دمج أو rebase، افتح قائمة خيارات العملية بـ
mلمعرفة خيارات المتابعة أو الإلغاء بدل خلط خطوات مختلفة. - مثال توضيحي: حذفت التزامًا من تاريخ فرع محلي، فتراجع الخيارات التي تعرضها الأداة لاستعادة حركة المرجع. هذا وصف للإمكان، وليس ضمان استعادة في كل حالة.
- القيد: توضح الوثائق أن الآلية لا تعكس تغييرات مجلد العمل أو stash. إذا أهملت تعديلات غير ملتزم بها فلا تفترض أن
zيعيدها. وإعادة كتابة تاريخ سبق مشاركته تؤثر في زملائك، حتى لو نجحت العملية على جهازك.

رسم توضيحي لحدود موثقة؛ لا يقدم وعدًا باستعادة البيانات.
🪜 مثال استخدام: فصل إصلاح عن تجربة
مثال توضيحي لم يُنفذ على مشروع فعلي. افترض أن فرعك يحتوي تعديلًا لتسجيل الدخول وتغييرًا تجريبيًا في التصميم، وأنك تريد حفظ الإصلاح فقط:
- افتح الطرفية داخل مجلد المستودع وشغّل
lazygit. تحقق من اسم الفرع الحالي، ولا تبدأ من افتراض أن نافذة المحرر والمجلد الحالي يشيران إلى النسخة نفسها. - تحرك إلى لوحة الملفات واختر الملف. اقرأ الفروق كاملة قبل التجهيز، خصوصًا تغييرات الإعدادات والاعتماديات التي قد يكون الوكيل أضافها.
- افتح عرض الفروق بـ
0وحدد أسطر الإصلاح، ثم جهزها بـSpace. إذا جهزت جزءًا زائدًا، انتقل إلى الجزء المجهز وأزل تجهيزه؛ إبقاؤه خارج الالتزام يختلف عن حذف التعديل. - راجع جميع الملفات المجهزة. شغّل اختبارات المشروع المناسبة في طرفية أخرى أو بعد الخروج؛ لا يكفي أن تبدو الأسطر صحيحة بصريًا.
- استخدم
cلإنشاء الالتزام برسالة تصف الإصلاح. تحقق من السجل ومن بقاء تجربة التصميم ضمن التعديلات غير المجهزة. - إذا احتجت إصلاحًا على فرع آخر، استخدم worktree من عرض الفروع بدل نقل ملفات الميزة يدويًا بين المجلدات.
- عند الرغبة في النشر، راجع المستودع البعيد والفرع المستهدف أولًا.
Pينفذ Push وpينفذ Pull وفق الوثائق؛ تسجيل commit محلي لا يرفع الملفات تلقائيًا.
النتيجة المقصودة التزام محدود يمكن مراجعته، مع بقاء التجربة منفصلة. لم أشغّل هذا السيناريو ولم أقس توفير وقت أو انخفاض أخطاء.
⚖️ ماذا تضيف مقارنة بالأوامر اليدوية؟
| المهمة | بالأوامر مباشرة | مع Lazygit |
|---|---|---|
| استعراض الحالة والفروق | git status وgit diff ثم الانتقال بين النتائج | لوحات ملفات وفروق في جلسة واحدة |
| تجهيز جزء من ملف | اختيار المقاطع عبر git add -p | تحديد مرئي للمقاطع والأسطر |
| العمل على فرعين | إدارة git worktree ومساراته يدويًا | إجراء لإنشاء worktree من الفرع المحدد |
| فهم التاريخ | git log ومقارنات مراجع | تصفح السجل ورسم الالتزامات والمقارنة |
| التعامل مع خطأ | تحديد أمر Git المناسب وفهم أثره | واجهة للتراجع وبعض الإجراءات، مع بقاء حدود Git |
أوامر Git تعطيك تحكمًا مباشرًا وتناسب السكربتات. إذا كنت مرتاحًا مع واجهة Git في محررك فلا يلزمك تغييرها؛ Lazygit مفيدة خصوصًا لمن يعمل من الطرفية ويريد مراجعة تفاعلية. وهي ليست منصة لاستضافة المستودعات أو إدارة مهام الفريق.
⚙️ الإعدادات المهمة
تستخدم الأداة ملف config.yml. المسار الافتراضي في macOS هو ~/Library/Application Support/lazygit/config.yml، وفي Linux هو ~/.config/lazygit/config.yml، وفي Windows هو %LOCALAPPDATA%\lazygit\config.yml مع دعم مسارات أخرى موضحة في الوثائق. قد تختلف مسارات التثبيت القديم؛ راجع الدليل بدل إنشاء ملفات متكررة.
لخفض الاتصالات الخلفية الموثقة تستطيع دمج هذا الجزء في ملفك، مع الحفاظ على إعداداتك الأخرى:
git:
autoFetch: false
update:
method: never
هذا يوقف الجلب الدوري وفحص التحديثات المحددين بهذه الخيارات، ولا يمنع Push أو Pull أو الأوامر المخصصة من الاتصال. git.autoRefresh يخص تحديث عرض الملفات، وليس هو نفسه الجلب من المستودع البعيد. تدعم الأداة كذلك إعدادات خاصة بالمستودع في .git/lazygit.yml وملفات .lazygit.yml في المجلدات الأعلى؛ راجع مصدر الإعدادات والأوامر التي تستخدمها.
🚀 التثبيت والبدء
على macOS مع Homebrew، الأمر الموثق هو:
brew install lazygit
بعد وجود Git ومستودع محلي، شغّل lazygit من داخل المجلد. يفتح ? قائمة الاختصارات، ويخرج q من الواجهة. لا تحتاج تثبيت Go لتشغيل ملف تنفيذي جاهز؛ البناء من المصدر مسار مختلف وله اعتمادياته، ويحدد go.mod للإصدار المتحقق Go 1.25.0.
تتوفر ملفات تنفيذية رسمية لـWindows وmacOS وLinux، وتظهر أصول الإصدار المتحقق بنسخ macOS لمعمارية arm64 وx86_64. اختر الملف الموافق لنظامك أو استخدم مدير الحزم الموثق؛ حزم الجهات الأخرى قد تتأخر عن الإصدار الرسمي. أحدث إصدار مستقر تحققت منه هو v0.66.1 المنشور 11 أكتوبر 2026. لم أثبت الأداة أو أنفذ أوامر التثبيت هنا، ولم أختبر توافق كل طرفية أو إعداد محرر.
🔗 التكاملات والتوافق
تعمل Lazygit فوق مستودعات Git المحلية، وتتعامل العمليات البعيدة مع إعدادات Git واعتماداته. يمكن فتح ملف في محررك عبر الإجراء الموثق، وإضافة أوامر مخصصة من customCommands. هذه الأوامر تعمل بصلاحيات المستخدم وتشغل أدوات خارجية؛ لا تفترض وجود تكامل AI رسمي لمجرد أنك تستطيع مراجعة كود كتبه وكيل.
تساعدك الأداة في مراجعة عمل قادم من أي محرر، لكن لا تدير تعارضات عدة وكلاء على المجلد نفسه. استخدم مجلدات واضحة وتحقق من الفرع قبل كل تعديل. ولا تضف أوامر مخصصة في البداية إلا عندما تفهم ما ستشغله؛ الميزات الأساسية لا تحتاج طبقة إضافية أو خادم MCP.
💰 التكلفة والخصوصية والصلاحيات
الكود بترخيص MIT، ويمكن استخدام الأداة محليًا دون اشتراك Lazygit أو API مدفوع. حسابات الاستضافة والخدمات الخارجية وتكاليفها منفصلة. تحفظ المستودعات محليًا، لكن ذلك لا يساوي انعدام الاتصال: الإعداد الافتراضي الموثق يشغّل الجلب الدوري من remote، ويحدد فحص تحديثات دوريًا. ترسل عملية Push محتوى Git إلى الوجهة التي أعددتها، وتستخدم المصادقة الخاصة بها.
تقرأ الأداة ملفات المشروع وبيانات Git، ويمكن لإجراءاتها تغيير الملفات والتاريخ. تعمل أوامر shell المخصصة وGit hooks بصلاحيات العملية المعتادة؛ الواجهة ليست صندوق عزل. راجع الفروق بحثًا عن أسرار قبل تجهيزها، ولا تتجاوز hooks لمجرد وجود اختصار يسمح بذلك. لم أجر تدقيقًا أمنيًا أو التقاطًا للشبكة، ولا أقدم ادعاءً بعدم وجود أي اتصال في كل الأوضاع.
⚠️ الحدود ومتى لا تستخدمها
إذا لم تعرف الفرق بين commit وpush أو بين حذف ملف وإزالة تجهيزه، ابدأ بمستودع تجريبي. سهولة تنفيذ الإجراء لا تقلل أثر reset أو rebase أو إسقاط التزام. واجهة الطرفية تحتاج تعلم الاختصارات، وتتغير وظيفة بعض المفاتيح حسب موضع التركيز. أما تقسيم التغييرات إلى التزامات صغيرة فلا يعوض اختبار السلوك.
Worktrees لا تعزل قواعد البيانات أو الخدمات، وUndo لا يستعيد كل نوع من البيانات. للمراجعة النصية البسيطة قد تكفي واجهة المحرر، ولإدارة قضايا الفريق والموافقات تحتاج خدمة مناسبة فوق Git. استخدم Lazygit عندما تكون حاجتك إدارة تغييرات المستودع بصورة تفاعلية وواضحة.
📚 المصادر وتاريخ التحقق
التحقق: 16 أكتوبر 2026. اعتمد الشرح على المستودع الأصلي، وREADME للإصدار v0.66.1، وصفحة الإصدار، والاختصارات، والإعدادات، والأوامر المخصصة، والترخيص.
سجلت واجهة GitHub الرسمية وقت الفحص 83,217 نجمة و3,081 تفرعًا، وآخر دفع ظاهر في 15 أكتوبر 2026. هذه مؤشرات نشاط وشعبية متغيرة، وليست تقييم مستخدمين أو شهادة جودة. لم أوثق عدد التنزيلات أو أجر اختبار تثبيت.
شمل الاكتشاف GitHub Topics وفهرسي claudeskills.info وdshmarket.com، مع الاعتماد على المصدر الأصلي للحقائق. قورنت الأداة مع Bruno من مجال اختبار API؛ Bruno يحفظ مجموعات الطلبات محليًا ويتيح تعاون Git، وله نسخ تجارية وقيود يجب مراجعتها حسب الميزة. اختيرت Lazygit لتغطية مراجعة تغييرات Git والعمل على الفروع، بعد بطاقة Task لأتمتة أوامر المشروع، وليس بناءً على النجوم وحدها.