دليل إعادة تسمية GIT إلى حالة أخرى يظهر نفس الاسم الذي يحتوي على ملفات كما تم تعديلها دائمًا

StackOverflow https://stackoverflow.com/questions/3494050

  •  28-09-2019
  •  | 
  •  

سؤال

بعد إعادة تسمية اختبار الدليل إلى الحالة السفلية (TestDirectory) ، يتم عرض جميع ملفاتها (A.HTML و B.HTML) على أنها تعديل وحتى إعادة تعيين GIT -لا تعيد تعيين شجرة العمل.

يقول Git دائمًا:

#   modified:   TestDirectory/a.html
#   modified:   TestDirectory/b.html

لا شيء يعمل على إعادة تعيين شجرة العمل إلى حالة غير معدلة ، لا تساعد أي من الأوامر التالية:

git reset --hard

git checkout -- TestDirectory/a.html

لا أفهم لماذا يحدث هذا وما يمكنني فعله. هل هو علة غيت؟

لم يتم إضافة تسمية من قبلي ولكن مستخدم GIT آخر.

GIT الإصدار 1.6.4

أقوم بتشغيل Mac OS X 10.6

هل كانت مفيدة؟

المحلول

بعد أن لعبت حوالي ساعة ، كان الحل الخاص بي هو حذف TestDirectory/A.HTML و TestDirectory/B.HTML يدويًا - بعد ذلك أبلغهم GIT عن "حذف" (لا أريد حذفها بالفعل) لكنها أعطتني القدرة على القيام بذلك GIT سحب والحصول على التغييرات عندما تم إصلاح المشكلة من قبل مستخدم آخر.

خطوات قصيرة:

  1. حذف الملفات testDirectory/A.HTML و TestDirectory/B.HTML
  2. سحب git

ملاحظة: لا يمكن القيام بسحب GIT في السابق بسبب خطأ في النزاع.

لم أفهم بوضوح ما يحدث ولكنه حل قضيتي. في رأيي ، لا يزال Git معقدًا تمامًا مثل Perl ، ويعكس الأوامر في الغالب الداخلية لـ GIT بدلاً من نوايا المستخدم :-)

نصائح أخرى

يمكنك التحقق مما إذا كان GIT إعادة كتابة نهايات خط (GIT Diff يعرض الملف الذي تم استبداله بنفسه ، فقط بنهايات سطر مختلفة). عندما يكون هذا هو الحال ، يجب أن تنظر إلى ما هي أفضل استراتيجية CRLF (عودة النقل ، تغذية الخط) مع GIT؟.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top