التراجع عن Commit
جزء من قسم التحكم في الإصدارات في رحلة Terminal على Coddy — الدرس 43 من 58.
إذا تمت مشاركة الـ commit بالفعل مع الآخرين، فإن تعديله يعد أمراً مخاطراً لأن المعرف (ID) الأصلي قد اختفى. الخيار الأكثر أماناً هو git revert.
git revert HEADgit revert ينشئ التزاماً (commit) جديداً تماماً يتراجع عن التغييرات من الالتزام المستهدف، مع ترك الالتزام الأصلي في مكانه. يظهر تاريخك كـ: "قمنا بـ X، ثم تراجعنا عن X".
يمكنك التراجع عن أي عملية تثبيت (commit) بواسطة المعرف (ID)، وليس فقط الأحدث منها:
git revert a1b2c3dاستخدم --no-edit لتخطي المحرر وقبول رسالة التراجع الافتراضية:
git revert --no-edit HEADتبدو الرسالة الافتراضية مثل Revert "Original subject"، مع تكرار الرسالة الأصلية في نص الرسالة.
التحدي
سهليحتوي المجلد على app.txt. قم بتهيئة المستودع (repo) وإنشاء التزامين (commits):
- أضف
app.txtمع رسالةAdd app. - قم بإلحاق
brokenبملفapp.txtوقم بالالتزام مع رسالةAdd broken line.
قم بالتراجع (Revert) عن آخر التزام (بدون محرر) لإلغاء السطر المعطوب. اطبع محتويات app.txt.
ورقة مرجعية
git revert يُنشئ التزامًا (commit) جديدًا يتراجع عن التغييرات من التزام مستهدف، مع الحفاظ على السجل:
git revert HEAD # التراجع عن آخر التزام
git revert a1b2c3d # التراجع عن أي التزام بواسطة المعرف (ID)
git revert --no-edit HEAD # تخطي المحرر، واستخدام الرسالة الافتراضيةتتبع رسالة التراجع الافتراضية التنسيق التالي: Revert "Original subject".
جرّب بنفسك
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس التحكم في الإصدارات
7التفرع (Branching)
ما هو الفرع (Branch)؟إنشاء فرعالتبديل بين الفروعإجراء Commit على فرعحذف فرعملخص - ممارسة التفرع10المستودعات البعيدة (Remotes)
ما هو الـ Remote؟إضافة Remoteعمليات Push و Pull و Cloneملخص - إعداد الـ Remote8الدمج
ما هو الدمجدمج التقديم السريع (Fast-Forward)الدمج ثلاثي الاتجاهات (Three-Way)تعارضات الدمجحل التعارضملخص - محترف الدمج11مشروع Feature Branch
نظرة عامة على المشروعتهيئة Main9التراجع عن التغييرات
تجاهل التغييرات غير المدرجةإلغاء إدراج ملفتعديل آخر Commitالتراجع عن Commitإعادة تعيين Branchملخص - آلة الزمن