Underscore: فشل الريبو git fsck

تم إنشاؤها على ٣١ أكتوبر ٢٠٢٠  ·  5تعليقات  ·  مصدر: jashkenas/underscore

ريبرو:

$ git config --system receive.fsckObjects true
$ git clone [email protected]:jashkenas/underscore.git  # or `git submodule add -- [email protected]:jashkenas/underscore.git`
Cloning into 'underscore'...
remote: Enumerating objects: 215, done.
remote: Counting objects: 100% (215/215), done.
remote: Compressing objects: 100% (130/130), done.
error: object b252cd0cf660db8fea1a40ae7d3ba0e34a41ffd3: zeroPaddedFilemode: contains zero-padded file modes
fatal: fsck error in packed object
bug

ال 5 كومينتر

zackschuster شكرًا على تواصلك.

اضطررت إلى البحث على الإنترنت للحصول على مزيد من المعلومات ، لأنني لم أسمع مطلقًا عن git fsck أو هذا الخطأ المحدد من قبل. لقد وجدت أخيرًا في https://github.com/pallets/flask/issues/2029 أن هناك حلين محتملين لهذا النوع من المشاكل. الأول يحل المشكلة حقًا عن طريق إعادة بناء المستودع ، لكنه مدمر للغاية لأن كل التجزئات بعد العنصر المعيب ستتغير. والثاني يرقى إلى إضافة بعض الوثائق لتحذير الناس بشأن المشكلة وإرشادهم إلى كيفية حلها (وهو ما يبدو قابلاً للتنفيذ تمامًا). فقط الحل الأخير سيكون قابلاً للتطبيق لهذا الريبو.

كل هذا يبدو لي بعض الشيء محل نقاش ، لأنني لا أستطيع إعادة إنتاج الخطأ. حاولت تشغيل الأوامر الدقيقة من المنشور الافتتاحي باستخدام Git 2.26.2 ، باستثناء sudo أمام الأمر الأول لأن هذا مطلوب لتغيير الإعدادات على مستوى النظام. تم استنساخ الريبو للتو دون أي أخطاء. لم أتمكن أيضًا من العثور على أي كائن به تجزئة b252cd0cf660db8fea1a40ae7d3ba0e34a41ffd3.

zackschuster يرجى التحقق واجهتها ليست نتيجة نقل الشبكة الخاطئ أو قراءة قرص خاطئ أو خطأ في إصدار معين من Git. سأغلق هذه القضية الآن ؛ إذا وجدت خطوات إضافية يمكنني إجراؤها لإعادة إنتاج الخطأ بعد كل شيء ، أو إذا كان بإمكان شخص آخر تأكيد أن هذه مشكلة بالفعل في إعادة التسطير السفلي ، فسنقوم بالطبع بإعادة فتحه.

jgonggrijp أنا أستخدم git 2.29.2 على macOS ، وقد تم تجميعها بالطريقة القياسية باستخدام autoconf & make. نعتذر عن الخطأ في أمر وحدة التحكم ؛ بصدق ، لقد تلقيت مجموعة من مجموعات fsckObjects من $HOME/.gitconfig .

لست متأكدًا من كيفية تعقب أخطاء blob من طرفي ، لكنني سأحاول الحصول على مزيد من التفاصيل: ابتسم:

jgonggrijp وجدت بعض المعلومات. من المذكرة:

  1. تشغيل git clone --config transfer.fsckobjects=false [email protected]:jashkenas/underscore.git يتجنب الخطأ (لاحظ transfer.fsckobjects ، كان لي الإعداد خطأ في تقريري الأصلي الاعتذار.!)
  2. في وقت لاحق ، يؤدي تشغيل git fsck في الريبو (باستخدام v2.29.2 ) إلى ظهور خطأين في وضع صفرPaddedFilemode
  3. git cat-file -p قائمة بالملفات ، مما يوحي بأنها التزامات سيئة ؛ git cat-file -t يميزهم كنوع tree . الناتج git show هو إصدار أقل إفادة من git cat-file -p . لا يُرجع git log أي شيء.

لقد قمت بتضمين إخراج وحدة التحكم كمرجع:

~/Source
$ git clone --config transfer.fsckobjects=false [email protected]:jashkenas/underscore.git
Cloning into 'underscore'...
remote: Enumerating objects: 215, done.
remote: Counting objects: 100% (215/215), done.
remote: Compressing objects: 100% (130/130), done.
remote: Total 10434 (delta 185), reused 101 (delta 85), pack-reused 10219
Receiving objects: 100% (10434/10434), 5.61 MiB | 9.21 MiB/s, done.
Resolving deltas: 100% (6770/6770), done.

~/Source
$ cd underscore 

~/Source/underscore
$ git fsck
Checking object directories: 100% (256/256), done.
warning in tree b252cd0cf660db8fea1a40ae7d3ba0e34a41ffd3: zeroPaddedFilemode: contains zero-padded file modes
warning in tree 8a654ec549a230dcab28e54c6e53c460cb9e190d: zeroPaddedFilemode: contains zero-padded file modes
Checking objects: 100% (10434/10434), done.

~/Source/underscore
$ git cat-file -p b252cd0cf660db8fea1a40ae7d3ba0e34a41ffd3
100644 blob d8cef485ec7309b938b4c3bc19171458e9139811    LICENSE
100644 blob 333b13f45b62427fd0840c77bb55bfc8fb96be6b    README
100644 blob 721c294b3ddb1d3e6ed35a7d9336e162aab01bb9    Rakefile
100644 blob bdaef73ca2ca82b90d37cec4b9c38606b440d619    index.html
100644 blob 6771de07ecd088853df1376f3693e81584ec2560    package.json
040000 tree d0a277f748b309f3d26e13d1cb5133ff003c468d    test
100644 blob 7cfbf993705f83e7fde17e9745b4187f7a4047b2    underscore-min.js
100644 blob 625411233e487b5cd8da1a32a69e5693b1862c09    underscore.js

~/Source/underscore
$ git cat-file -p 8a654ec549a230dcab28e54c6e53c460cb9e190d
100644 blob 9644b34c3f5c16753d1061497aa7aab426e6c896    LICENSE
100644 blob e41015cd7cc04a940ac4e7a451aeb0b0b384c3a3    README
100644 blob 6af14bb6d570698990d30aa0b46e398ae3fd48b1    Rakefile
100644 blob 1a03be19fc8ddf61b113f71c19d6892fb74ff4f5    index.html
100644 blob 2cbc8128d9db1feabc44a3be14c504e40b6b7e2e    package.json
040000 tree fae9dcb01827d13b2b5fbd9afab07489b249dab8    test
100644 blob 2c8b499882c2a5d662ea35c80ec7ea0fa111814f    underscore-min.js
100644 blob 42bf31a27545d0d5460c655d13ce9bbf76e540b3    underscore.js

~/Source/underscore
$ git cat-file -t b252cd0cf660db8fea1a40ae7d3ba0e34a41ffd3
tree

~/Source/underscore
$ git cat-file -t 8a654ec549a230dcab28e54c6e53c460cb9e190d
tree

~/Source/underscore
$ git show b252cd0cf660db8fea1a40ae7d3ba0e34a41ffd3
tree b252cd0cf660db8fea1a40ae7d3ba0e34a41ffd3

LICENSE
README
Rakefile
index.html
package.json
test/
underscore-min.js
underscore.js

~/Source/underscore
$ git show 8a654ec549a230dcab28e54c6e53c460cb9e190d
tree 8a654ec549a230dcab28e54c6e53c460cb9e190d

LICENSE
README
Rakefile
index.html
package.json
test/
underscore-min.js
underscore.js

~/Source/underscore
$ git log b252cd0cf660db8fea1a40ae7d3ba0e34a41ffd3

~/Source/underscore
$ git log 8a654ec549a230dcab28e54c6e53c460cb9e190d

~/Source/underscore
$ 

يمكنني الآن إعادة إنتاج المشكلة. شكرا على المثابرة ، zackschuster.

لذلك ربما يجب علينا فقط توثيق حقيقة وجود هذه المشكلة وشرح كيف يمكن للناس حلها. ربما يكون CLONING.md المكان المناسب لمثل هذه الوثائق.

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

نرحب بالمساعدة.

حاولت استخدام git fast-export + git fast-import (باستخدام إجابة SO هذه ) وتم إصلاح الريبو ، ولكن تم تغيير التجزئة. يسرد flask تعليمات zeroPaddedFilemode الخاصة بهم ضمن المساهمة ، لذا قد يكون نسخ نصهم إلى CONTRIBUTING.md خيارًا.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات