freeCodeCamp/guide/arabic/miscellaneous/how-to-squash-multiple-comm.../index.md

31 lines
1.5 KiB
Markdown

---
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 خطأً فيك.
من المقترح بشدة أن تقرأ المعلومات الموجودة في الملف المفتوح لأن هناك العديد من الأشياء التي يمكنك القيام بها.