التراجع عن تعديلات لم تُحفظ
لإلغاء تغييرات ملف قبل add:
git restore file.txt # أرجع الملف لآخر نسخة محفوظة
إخراج ملف من منطقة التجهيز
git restore --staged file.txt # تراجع عن git add
تعديل آخر commit
نسيت ملفًا أو أخطأت في الرسالة؟
git add forgotten.txt
git commit --amend -m "رسالة محدّثة"
reset مقابل revert
| الأمر | ماذا يفعل | متى |
|---|---|---|
git reset | يحذف commits محليًا | قبل الرفع (push) |
git revert | ينشئ commit يلغي تغييرًا | بعد الرفع (آمن للفريق) |
git reset --soft HEAD~1 # تراجع عن آخر commit (يبقي التغييرات)
git revert <commit-hash> # يلغي commit بأمان دون حذف التاريخ
⚠️
git reset --hardيحذف التغييرات نهائيًا — استخدمه بحذر شديد.
القاعدة الذهبية
- محليًا (لم ترفع بعد):
resetمقبول. - بعد الرفع للفريق: استخدم
revertدائمًا حتى لا تُفسد تاريخ الآخرين.
🎯 التالي: العمل الجماعي وحلّ التعارضات.