मैं अपने गिटहब खाते पर एक संग्रह पर काम कर रहा था और यह एक समस्या है जिस पर मैंने ठोकर खाई। कुछ NPM संकुल स्थापित गिट/गिटहब के इतिहास से फ़ोल्डर और इसकी सामग्री को हटाएं
node_modules
फ़ोल्डर- Node.js परियोजना कोड GitHub के लिए (के बारे में सोच नहीं किया गया था धक्का दिया उस समय NPM हिस्सा)
- एहसास है कि तुम सच नहीं है जरूरत है कि फ़ोल्डर कोड
- का एक हिस्सा उस फ़ोल्डर नष्ट कर दिया गया हो सकता है, यह
उस उदाहरण पर, कुल गिट रेपो का आकार लगभग 6MB था जहां वास्तविक कोड (उस फ़ोल्डर को छोड़कर सभी) केवल 300 KB था।
अब मैं अंत में क्या देख रहा हूं वह गिट के इतिहास से उस पैकेज फ़ोल्डर के विवरण से छुटकारा पाने का एक तरीका है, इसलिए यदि कोई इसे क्लोन करता है, तो उन्हें 6 एमबी के इतिहास को डाउनलोड करने की ज़रूरत नहीं है, जहां केवल वास्तविक फाइलें वे अंतिम प्रतिबद्धता के रूप में प्राप्त करेंगे 300KB होगा।
मैं इस के लिए संभव समाधान ऊपर देखा और
- Remove file from git repository (history)
- http://help.github.com/remove-sensitive-data/
- https://gist.github.com/1588371
सार लग रहा था जैसे कि यह काम करने की कोशिश की इन 2 तरीकों जहां स्क्रिप्ट चलाने के बाद, यह दिखाया गया है कि यह उस फ़ोल्डर से छुटकारा पा लिया और उसके बाद यह दिखाया गया कि 50 अलग-अलग कामों को संशोधित किया गया था। लेकिन उसने मुझे उस कोड को धक्का नहीं दिया। जब मैंने इसे धक्का देने की कोशिश की, तो उसने Branch up to date
कहा लेकिन दिखाया कि 50 कमिट्स git status
पर संशोधित किए गए थे। अन्य 2 विधियों ने भी मदद नहीं की।
अब यह दिखाया गया है कि यह उस फ़ोल्डर के इतिहास से छुटकारा पाता है, जब मैंने अपने लोकहोस्ट पर उस रेपो के आकार की जांच की, तो यह अभी भी लगभग 6 एमबी था। (मैंने refs/original
फ़ोल्डर को भी हटा दिया लेकिन रेपो के आकार में परिवर्तन नहीं देखा)।
जो मैं स्पष्ट करने के लिए देख रहा हूं, अगर न केवल प्रतिबद्ध इतिहास से छुटकारा पाने का कोई तरीका है (जो कि मुझे लगता है कि एकमात्र चीज है) लेकिन उन फाइलों की गिट यह भी मान रही है कि कोई रोलबैक करना चाहता है।
आइए कहें कि इसके लिए एक समाधान प्रस्तुत किया गया है और इसे मेरे लोकहोस्ट पर लागू किया गया है लेकिन उस गिटहब रेपो को पुन: उत्पन्न नहीं किया जा सकता है, क्या यह रेपो क्लोन करना संभव है, पहली प्रतिबद्धता के लिए रोलबैक चाल को निष्पादित करता है और इसे दबाता है (या करता है इसका मतलब है कि गिट के पास अभी भी उन सभी का इतिहास होगा? - उर्फ 6 एमबी)।
मेरा अंतिम लक्ष्य मूल रूप से गिट से फ़ोल्डर सामग्री से छुटकारा पाने का सबसे अच्छा तरीका है ताकि उपयोगकर्ता को 6 एमबी मूल्य की सामग्री डाउनलोड न हो और फिर भी संभवतः अन्य ऐसा काम करता है जो मॉड्यूल को कभी नहीं छुआ गिट के इतिहास में फ़ोल्डर (जो उनमें से बहुत अधिक है)।
मैं यह कैसे कर सकता हूं?
यदि नीचे दिए गए किसी भी उत्तर में आपकी समस्या हल हो गई है, तो शायद आपको अपने प्रश्न का उत्तर स्वीकार करने पर विचार करना चाहिए। https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work – starbeamrainbowlabs