البرمجة

تعارض حالة الملف: حالة المرحلة مختلفة عن HEAD

عند استخدام الأمر git rm --cached لإلغاء تتبع الملف من قبل Git دون حذف الملف نفسه، قد تحصل على رسالة الخطأ التي تشير إلى أن الملف لديه تغييرات مسرحة (staged) مختلفة عن النسخة الموجودة في مرحلة العمل (working directory) وكذلك عن النسخة الموجودة في HEAD (أي آخر commit في الفرع الحالي).

هذا يعني أن الملف قد تم تعديله بعدما تمت إضافته للمرحلة (staged) لكن لم يتم حفظ هذه التغييرات بعد. في هذه الحالة، يجب عليك إما حفظ التغييرات باستخدام git commit، أو إلغاء تغييرات الملف باستخدام git checkout -- قبل استخدام git rm --cached لإلغاء تتبع الملف.

بمعنى آخر، تظهر هذه الرسالة عندما يكون الملف المُستهدَف للإلغاء تتبعه (untrack) قد تم تعديله بعدما تم إضافته للمرحلة (staged)، وهذا التعديل يجب عليك أن تتخذ إجراء مناسباً له قبل إلغاء تتبع الملف.

المزيد من المعلومات

عندما يحدث هذا، يكون لديك تعارض بين حالة الملف في المرحلة (staged) وحالته في مجلد العمل (working directory). تظهر هذه الرسالة لتنبيهك بأن الملف قد تم تعديله بعد أن تمت إضافته للمرحلة (staged)، وهذا يعني أن أي تغييرات تم إجراؤها على الملف لم تتم تضمينها في التعهد الحالي (commit) الذي يشير إليه HEAD.

هذه الحالة تشير إلى أنه يجب عليك إما أن تلتزم بتعديلات الملف الحالية وتضمينها في commit، أو أن تسترجع الملف إلى حالته السابقة (التي تمت إضافتها للمرحلة staged) باستخدام git checkout -- قبل استخدام git rm --cached لإلغاء تتبع الملف.

مقالات ذات صلة

زر الذهاب إلى الأعلى

المحتوى محمي من النسخ !!