2016-05-10 3 views
25

चलाने में विफल रहा मैं कचरा इकट्ठा करने की कोशिश करते समय यादृच्छिक रूप से सूची हिट करता हूं।गिट जीसी घातक को कैसे संभालें: खराब ऑब्जेक्ट रेफरी/रिमोट्स/मूल/हेड त्रुटि: रिपैक

$ git gc 
fatal: bad object refs/remotes/origin/HEAD 
error: failed to run repack 

मैं इससे कैसे निपटूं?

उत्तर

10

मैंने सोचा कि समाधान काम करने लगने के बाद से निम्नलिखित था, लेकिन यह वास्तव में समस्या को हल नहीं करता है।

git remote set-head origin --auto 
+10

प्रतीक्षा करें, क्या आपने बस इतना कहा है कि आपका उत्तर गलत है? – mkoryak

+1

ऐसा लगता है कि इस आदेश ने मुझे एक ही परेशानी से छुटकारा पाने में मदद की। हालांकि, इस आदेश के बाद, मैंने 'गिट प्रून' का भी उपयोग किया (जैसा कि पहले कमांड आउटपुट में अनुशंसित किया गया था), इसलिए मैं वास्तव में यह बताने में सक्षम नहीं हूं कि मुझे किसने मदद की - पहला, दूसरा, या दोनों। –

+0

'गिट रिमोट सेट-हेड उत्पत्ति - ऑटोो' ने मुझे 'गिट प्रून' – danio

45

मैं इस की जटिलताओं को समझने नहीं है, लेकिन सुझाव के रूप में in this thread, जब मैं का सामना करना पड़ा इस मैं सिर्फ $ mv .git/refs/remotes/origin/HEAD /tmp (सिर्फ मामले में चारों ओर रखते हुए) और फिर $ git gc शिकायत के बिना काम किया था, मैंने किसी भी समस्या में भाग नहीं लिया है।

+0

मेरे लिए काम नहीं किया :( –

+2

यह मेरे लिए काम करता है और मुझे लगता है कि मुझे इस समस्या में आया क्योंकि मैंने 'मास्टर' से डिफ़ॉल्ट शाखा को 'विकास' कहा जाता है। इसे 'विकास' से पहले बदलने से पहले 'मास्टर' और ** मैंने पुरानी डिफ़ॉल्ट शाखा 'विकास' ** हटा दी है, लेकिन मेरी कार्यशील निर्देशिका में, फ़ाइल' .git/refs/remotes/origin/HEAD' 'अभी भी' refs/remotes/origin/विकसित करें जो अब मौजूद नहीं है। ** इस स्थिति में ** फ़ाइल को हटाने से काम किया गया। – Stavarengo

8

समस्या यह है कि मैं में भाग (जो एक ही समस्या यह है कि इसके बाद के संस्करण this comment में उल्लेख किया @Stavarengo है) कि डिफ़ॉल्ट दूरस्थ शाखा (मेरे मामले में develop) नष्ट कर दिया गया था, लेकिन अभी भी .git/refs/remotes/origin/HEAD संदर्भित किया गया है है। अपने संपादक में

उद्घाटन .git/refs/remotes/origin/HEAD इस से पता चला है:

ref: refs/remotes/origin/develop 

मैं ध्यान से मेरी नई डिफ़ॉल्ट शाखा में बात करने के लिए उसे संपादित और सब कुछ ठीक था:

ref: refs/remotes/origin/master 

सुराग कि मुझे टिप बंद क्या यह चल रहा था git prune ने यह त्रुटि दिखायी:

> git prune 
warning: symbolic ref is dangling: refs/remotes/origin/HEAD 
संबंधित मुद्दे