لا يتعين على المطورين الجدد فقط ، ولكن أيضًا المحترفين المتحمسين اللجوء إلى التراجع عن أي تغييرات. وبعد ذلك ، أول ما يتبادر إلى الذهن هو الأمر git revert، باعتباره الطريقة الأكثر أمانًا. وهناك مطبات أود أن أخبركم عنها.
لنأخذ موقفًا بسيطًا: قرر المطور تنفيذ وظائف الرياضيات. لكن في منتصف الطريق ، أدرك أنه سيكون من الجيد تقسيم هذه المهمة إلى مهمتين فرعيتين ، على سبيل المثال:
- تنفيذ عمليات حسابية (جمع ، طرح ، قسمة ، إلخ.)
- تنفيذ العمليات الرقمية (القيمة القصوى ، الحد الأدنى للقيمة ، معامل الرقم ، إلخ.)
سيكون من الأسهل التحقق والاختبار. لكنه بدأ بالفعل في تنفيذه ، وقد تم بالفعل إنشاء الالتزامات ، وما العمل؟ لا تعيد كتابة نفس الشيء!

النظر في شجرة الالتزام. نرى أن مطورنا قد أنشأ فرعًا functions، فئة الحساب ، وهي مسؤولة عن تنفيذ العمليات الحسابية (الالتزام أ ) ، والفئة العددية ، وهي المسؤولة عن تنفيذ العمليات الرقمية (الالتزام N ). في المجموع ، هناك فئتان واثنان من الالتزامات.

git revert
تقرر عدم إعادة كتابة أي شيء ، والإرث من functionsوإنشاء فرعين numericalو arithmetic. وتراجع عن الالتزامات غير الضرورية وفقًا لذلك. أي ، نفذ git revert Nفي الفرع الحسابي والفرع git revert Aالعددي. عبقري وبسيط!

العمل على قدم وساق وليس هناك سوى شيء واحد للقيام به - لرائحة السيد مع هذه الفروع.

? Arithmetic, Numerical!
, git revert . 4 :
A ⟶ N ⟶ revert A ⟶ revert N
revert .
git reset
, reset, revert . … . , .
git rebase
— git rebase .
numerical arithmetic
git rebase -i –root
, pick drop. . numerical:

.
master .

, , , (git push) git , , .
git, , . , , ?