--- title: Git Reset localeTitle: غيت ريسيت --- ## غيت ريسيت يسمح لك الأمر `git reset` رأسك الحالي إلى حالة محددة. يمكنك إعادة تعيين حالة ملفات محددة بالإضافة إلى فرع بأكمله. ### إعادة تعيين ملف أو مجموعة من الملفات يتيح لك الأمر التالي اختيار أجزاء من المحتوى بشكل انتقائي والعودة أو إلغاء تثبيتها. `git reset (--patch | -p) [tree-ish] [--] [paths] ` ### قم بإلغاء تثبيت ملف إذا قمت بنقل ملف إلى منطقة التدريج مع `git add` ، ولكن لم تعد ترغب في أن يكون جزءًا من التزام ، يمكنك استخدام `git reset` لإلغاء تثبيت هذا الملف: `git reset HEAD FILE-TO-UNSTAGE ` ستظل التغييرات التي أجريتها في الملف ، وهذا الأمر يزيل فقط هذا الملف من منطقة التدريج الخاصة بك. ### إعادة تعيين فرع إلى ارتكاب مسبق يقوم الأمر التالي بإعادة تعيين HEAD الفرع الحالي الخاص بك إلى `COMMIT` المعطى ويقوم بتحديث الفهرس. إنها ترجع بشكل أساسي حالة فرعك ، ثم تلتزم جميعًا بالتقدم في الكتابة على أي شيء جاء بعد نقطة إعادة التعيين. إذا حذفت الدالة `MODE` ، `--mixed` الافتراضي لها - `--mixed` : `git reset MODE COMMIT ` الخيارات الخاصة بـ `MODE` هي: * `--soft` : لا يعيد ضبط ملف الفهرس أو شجرة العمل ، بل يعيد تعيين الرأس `commit` . يغير جميع الملفات إلى "التغييرات يجب الالتزام بها" * `--mixed` : إعادة تعيين الفهرس ولكن ليس شجرة العمل والتقارير ما لم يتم تحديثه * `--hard` : يعيد ضبط المؤشر وشجرة العمل. يتم تجاهل أي تغييرات على الملفات المتعقبة في شجرة العمل منذ `commit` * `--merge` : إعادة تعيين الفهرس وتحديث الملفات في شجرة العمل التي تختلف بين `commit` و HEAD ، ولكنها تحافظ على تلك التي تختلف بين الفهرس والشجرة العاملة * `--keep` : إعادة تعيين إدخالات الفهرس وتحديث الملفات في شجرة العمل التي تختلف بين `commit` و HEAD. إذا كان الملف المختلف بين `commit` و HEAD له تغييرات محلية ، يتم إحباط عملية إعادة التعيين ### معلومات اكثر: * [وثائق إعادة Git](https://git-scm.com/docs/git-reset)