Files
freeCodeCamp/guide/arabic/git/git-reset/index.md
2019-06-20 16:45:11 -05:00

45 lines
2.8 KiB
Markdown

---
title: Git Reset
localeTitle: غيت ريسيت
---
## غيت ريسيت
يسمح لك الأمر `git reset` رأسك الحالي إلى حالة محددة. يمكنك إعادة تعيين حالة ملفات محددة بالإضافة إلى فرع بأكمله.
### إعادة تعيين ملف أو مجموعة من الملفات
يتيح لك الأمر التالي اختيار أجزاء من المحتوى بشكل انتقائي والعودة أو إلغاء تثبيتها.
```shell
git reset (--patch | -p) [tree-ish] [--] [paths]
```
### قم بإلغاء تثبيت ملف
إذا قمت بنقل ملف إلى منطقة التدريج مع `git add` ، ولكن لم تعد ترغب في أن يكون جزءًا من التزام ، يمكنك استخدام `git reset` لإلغاء تثبيت هذا الملف:
```shell
git reset HEAD FILE-TO-UNSTAGE
```
ستظل التغييرات التي أجريتها في الملف ، وهذا الأمر يزيل فقط هذا الملف من منطقة التدريج الخاصة بك.
### إعادة تعيين فرع إلى ارتكاب مسبق
يقوم الأمر التالي بإعادة تعيين HEAD الفرع الحالي الخاص بك إلى `COMMIT` المعطى ويقوم بتحديث الفهرس. إنها ترجع بشكل أساسي حالة فرعك ، ثم تلتزم جميعًا بالتقدم في الكتابة على أي شيء جاء بعد نقطة إعادة التعيين. إذا حذفت الدالة `MODE` ، `--mixed` الافتراضي لها - `--mixed` :
```shell
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)