شرح صفوف ومحتوى الفقرة
عند تنفيذ الأمر git reset دون تمرير أي خيار (أو بكتابة --mixed صراحةً)، ينفذ Git خطوتين: يحرك المؤشر HEAD إلى الالتزام الهدف، ويفرغ منطقة التجهيز لتطابق ذلك الالتزام، بينما يترك ملفات مجلد العمل سليمة تماماً على القرص.
وبذلك تبقى تعديلات الالتزام الملغى موجودة داخل ملفاتك كتعديلات غير مجهزة، مما يتيح لك مراجعتها بالأمر git diff وتجهيز ما تريده منها انتقائياً عبر git add.
Shell
# Undo last commit and unstage its changes (default --mixed)
git reset HEAD~1
git status -s
# M index.html
git diff index.html