2009-05-14 9 views
6

मैंने दुर्घटना से गिट रेपो को बड़ी छवियों का एक गुच्छा किया और यह चीजों को क्रॉल में धीमा कर दिया। मैंने छवियों को हटा दिया लेकिन चेकआउट करने के लिए अभी भी हमेशा के लिए लेता है और .git फ़ाइल 300 + एमबी है। ऐसा लगता है कि .pack फ़ाइलें बहुत बड़ी हैं।गिट - बड़ी फ़ाइल हटा दी गई लेकिन चेकआउट और .pack फ़ाइलें अभी भी बड़ी हैं

क्या इसे साफ़ करने का कोई तरीका है?

धन्यवाद

+1

मुझे इसके लिए कोई समाधान नहीं मिला है: मेरा 2.3 एमबी ऐप अचानक ~ 81 एमबी है। – arbales

उत्तर

4

यदि आप बनाने के इस तरह के एक प्रतिबद्ध लेकिन किसी अन्य भंडार में अपने परिवर्तन धक्का दिया नहीं किया है, तो यह git-rebase या अधिक शक्तिशाली git-filter-branch साथ यह से छुटकारा पाने के आसान है। हालांकि, ऐसा लगता है कि आप पहले से ही इन बड़ी फ़ाइलों को अपस्ट्रीम को धक्का दे चुके हैं।

यदि इन परिवर्तनों को पहले से ही कई अलग-अलग भंडारों में साझा किया गया है, विशेष रूप से जिनके पास आगे काम किया गया है, तो व्यवधान पैदा किए बिना इसे साफ करना मुश्किल हो सकता है। यदि परिवर्तनों को अभी तक व्यापक रूप से साझा नहीं किया गया है, तो आप बड़ी फ़ाइलों को हटाने के लिए "मास्टर" भंडार (जो भी हो) को संसाधित करने के लिए git-filter-branch जैसे कुछ का उपयोग कर सकते हैं। फिर, अपने नए शिल्प वाले पुराने मास्टर रिपोजिटरी को प्रतिस्थापित करें और उस बिंदु से जारी रखें। आपको इस नए मास्टर रिपॉजिटरी से मौजूदा भंडारों में बदलावों को सावधानीपूर्वक खींचने की आवश्यकता हो सकती है, या बस उन्हें छोड़ दें और एक नया क्लोन बनाएं।

संबंधित मुद्दे