--- title: Git Checkout localeTitle: بوابة الخروج --- ## بوابة الخروج يقوم الأمر `git checkout` بالتبديل بين الفروع أو استعادة ملفات شجرة العمل. هناك عدد من الخيارات المختلفة لهذا الأمر والتي لن يتم تغطيتها هنا ، ولكن يمكنك إلقاء نظرة عليها كلها في [وثائق Git](https://git-scm.com/docs/git-checkout) . ### الخروج التزام محدد للخروج من التزام معين ، قم بتشغيل الأمر: `git checkout specific-commit-id ` يمكننا الحصول على رقم تعريف الالتزام المحدد عن طريق تشغيل: `git log ` ### الخروج فرع موجود للتحقق من فرع موجود ، قم بتشغيل الأمر: `git checkout BRANCH-NAME ` بشكل عام ، لن تسمح لك Git بالتسجيل في فرع آخر ما لم يكن دليل عملك نظيفًا ، لأنك ستفقد أي تغييرات في دليل العمل غير ملتزم بها. لديك ثلاثة خيارات للتعامل مع تغييراتك: 1) قم بسحبها ، 2) [ارتكابها](https://guide.freecodecamp.org/git/git-commit/) ، أو 3) [خبأتها](https://guide.freecodecamp.org/git/git-stash/) . ### الخروج فرع جديد لإنشاء فرع جديد بأمر واحد والخروج منه ، يمكنك استخدام: `git checkout -b NEW-BRANCH-NAME ` سيؤدي هذا إلى تبديلك تلقائيًا إلى الفرع الجديد. ### الخروج فرع جديد أو إعادة تعيين فرع إلى نقطة البداية يشبه الأمر التالي التحقق من فرع جديد ، ولكنه يستخدم علامة `-B` (لاحظ علامة captional B) ومعلمة `START-POINT` اختيارية: `git checkout -B BRANCH-NAME START-POINT ` إذا كان `BRANCH-NAME` غير موجود ، فسيقوم Git بإنشائه وبدء تشغيله عند `START-POINT` . إذا كان `BRANCH-NAME` موجودًا بالفعل ، فعندئذٍ يقوم Git بإعادة تعيين الفرع إلى `START-POINT` . هذا يعادل تشغيل `git branch` مع `-f` . ### فرض على Checkout يمكنك تمرير الخيار `-f` أو `--force` باستخدام أمر `git checkout` لإجبار Git لتحويل الفروع ، حتى إذا كان لديك تغييرات غير مرتبة (بمعنى آخر ، يختلف فهرس شجرة العمل عن `HEAD` ). في الأساس ، يمكن استخدامه لرمي التغييرات المحلية. عند تشغيل الأمر التالي ، سيتجاهل Git الإدخالات غير المدمجة: `git checkout -f BRANCH-NAME # Alternative git checkout --force BRANCH-NAME ` ### التراجع عن التغييرات في دليل العمل الخاص بك يمكنك استخدام أمر `git checkout` للتراجع عن التغييرات التي أجريتها على ملف في دليل العمل. سيؤدي هذا إلى إعادة الملف إلى الإصدار في `HEAD` : `git checkout -- FILE-NAME `