انتقل إلى محتوى الدرس

Hard Reset Data Loss Hazards الوضع --hard وخطر الفقدان

أتقن آلية عمل git reset على المناطق الثلاث بأوضاعه --soft و--mixed و--hard، وتعلّم إنقاذ الالتزامات المفقودة عبر سجل الحركات المرجعي git reflog.
1 صفوف تعليمية
Version Control
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

يمتد تأثير الأمر git reset --hard <commit> ليشمل المناطق الثلاث دفعة واحدة؛ فهو يرجع المؤشر HEAD للخلف، ويعيد ضبط منطقة التجهيز، ويستبدل جميع الملفات المتتبعة في مجلد العمل لتطابق الالتزام الهدف تماماً.

ونظراً لأن الخيار --hard يمسح نهائياً أي تعديلات محلية في مجلد العمل أو منطقة التجهيز لم يسبق حفظها في التزام، يجب دائماً فحص git status بحذر قبل تنفيذه.

Shell
# Verify status before running a destructive reset
git status -s
# Reset HEAD, Staging Index, and Working Tree to HEAD~1
git reset --hard HEAD~1
git status -s