Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

Git Commit --amend

آخر تحديث

يستبدل git commit --amend أحدث commit بآخر جديد، مما يتيح لك إصلاح رسالته أو إضافة ملفات نسيت تجهيزها. إنه لا يضيف commit ثانيًا؛ بل يعيد كتابة الأخير. ولأن ذلك يغيّر hash الـ commit، فلا تعدّل سوى الـ commits التي لم ترفعها بعد.

جرّب هذه الأوامر في ساحة الطرفية - صدفة حقيقية داخل متصفحك، دون الحاجة إلى تثبيت أي شيء.

git commit --amend يستبدل آخر commit بنسخة معاد كتابتها بدلًا من إضافة commit ثانٍ.

الصياغة

CommandWhat it does
git commit --amendيحرّر آخر commit ورسالته
git commit --amend -m "new message"يغيّر رسالة آخر commit مباشرةً في السطر
git commit --amend --no-editيضيف الملفات المجهّزة مع الإبقاء على الرسالة نفسها

حالات شائعة

GoalCommand
إصلاح خطأ مطبعي في الرسالة الأخيرةgit commit --amend -m "fixed message"
إضافة ملف منسي إلى آخر commitgit add file ثم git commit --amend --no-edit
تعديل commit تم رفعه بالفعل (بحذر)عدّله ثم git push --force-with-lease

الأسئلة الشائعة حول git commit --amend

كيف أغيّر رسالة آخر commit لديّ؟
شغّل git commit --amend -m "new message" لاستبدالها مباشرةً في السطر، أو git commit --amend لفتح المحرّر وإعادة كتابتها هناك. هذا يعيد كتابة آخر commit بالرسالة الجديدة - لا تفعل ذلك مع commit سبق أن رفعته إلا إذا كنت مستعدًا لتنفيذ force push.
كيف أضيف ملفًا منسيًا إلى آخر commit؟
جهّز الملف باستخدام git add <file>، ثم شغّل git commit --amend --no-edit. تحافظ الراية --no-edit على رسالة الـ commit الحالية وتكتفي بدمج التغييرات المجهّزة حديثًا في الـ commit السابق.
هل ينشئ git commit --amend commit جديدًا؟
لا - إنه يستبدل آخر commit بدلاً من إضافة واحد. تبدو النتيجة وكأنها commit واحد، لكنه تقنيًا commit جديد بـ hash جديد يحلّ محلّ القديم. ولهذا السبب يتطلب تعديل التاريخ المشترك تنفيذ force push.
هل من الآمن تعديل commit تم رفعه؟
بحذر فقط. التعديل يعيد كتابة الـ commit، لذا بعد الرفع ستحتاج إلى git push --force-with-lease، وهو ما قد يربك أي شخص سبق أن سحب النسخة الأصلية. على فرع مشترك، فضّل commit جديدًا أو git revert بدلاً من التعديل.
هل يمكنني التدرّب على هذا عبر الإنترنت؟
نعم. افتح ساحة الطرفية لتشغيل git commit --amend في صدفة حقيقية داخل متصفحك - دون الحاجة إلى تثبيت أي شيء. كما يغطّي مساق Git التفاعلي المجاني من Coddy إصلاح الـ commits خطوة بخطوة.
Coddy programming languages illustration

تعلّم Git مع Coddy

ابدأ الآن