--- title: How to Squash Multiple Commits into One with Git localeTitle: كيفية الإسكوا تلتزم متعددة في واحد مع بوابة --- هذه هي ميزة رهيبة من `rebase` التي يمكن استخدامها في الوضع `interactive` . لتقليص _n_ الأخير في واحد ، قم بتشغيل الأمر التالي: `git rebase -i HEAD~n ` سيؤدي ذلك إلى فتح محرر نصوص بشيء مماثل لما يلي: `pick commit_1 pick commit_2 pick commit_3 ... pick commit_n # Bunch of comments ` اترك الالتزام الأول بمفرده ، وغيري بقية `pick` إلى `squash` . حفظ والخروج من المحرر. لذا إذا أردت أن تسحق آخر ثلاث دعاوى ، فستقوم أولاً بتشغيل `git rebase -i HEAD~3` ، ثم ستحتاج إلى تعديل التزاماتك لتبدو شبيهة مثل: `pick dd661ba Commit 1 squash 71f5fee Commit 2 squash f4b4bf1 Commit 3 ` إذا كنت قد دفعت بالفعل إلى جهاز تحكم عن بعد قبل أن تضغط على `-f` ، فسيتعين عليك الضغط على جهاز التحكم عن بعد مرة أخرى ، مع العلم `-f` ، وإلا فسوف يلقي git خطأً فيك. من المقترح بشدة أن تقرأ المعلومات الموجودة في الملف المفتوح لأن هناك العديد من الأشياء التي يمكنك القيام بها.