स्पष्ट स्थानीय कैश


97

मेरे पास एक वेबस्टॉर्म परियोजना है जो मैं करने जा रहा था, लेकिन Git Windows GUI में प्रतिबद्ध बटन दबाने से पहले, मुझे याद आया कि मैं अपना .ideaफ़ोल्डर सामग्री नहीं बनाना चाहता ।

इसलिए मैंने उस वेबसाइट का उपयोग किया जो ऑटो .gitignoresकुछ निश्चित आईडीई के लिए उत्पन्न करता है और इसे अपनी .gitignoreफ़ाइल में जोड़ा है ।

.ideaस्पष्ट रूप से नजरअंदाज की गई सभी फाइलें अभी भी कमिट करने के लिए दिखाई दे रही हैं, मेरे द्वारा हटाए जाने और विचाराधीन फाइलों को दोबारा जोड़ने के बावजूद।

मैंने बिना किसी अन्य फाइल के भी gitignore फाइल की है, और अपनी सामग्री को फिर से चिपकाया है, लेकिन यह अभी भी .idea फाइलों की अनदेखी नहीं कर रहा है।

मैं अपने कैश को रीफ़्रेश या साफ़ करने के लिए Git को कैसे बताऊँ?
मैं कोशिश की / सीडी में निर्देशिका में सवाल, और टाइपिंग

git clean -n

लेकिन कोई फाइल नहीं दिखा।

जवाबों:


127

स्पष्ट रूप से नजरअंदाज की गई सभी .idea फाइलें अभी भी कमिट करने के लिए दिखाई दे रही हैं

आपको उन्हें मचान क्षेत्र से निकालना होगा

git rm --cached .idea

अब आपको उन परिवर्तनों को करना होगा और उन्हें इस बिंदु से अनदेखा कर दिया जाएगा।
एक बार परिवर्तन को ट्रैक करने के लिए शुरू करने के बाद यह उन्हें "ट्रैक" नहीं करेगा, भले ही उन्हें .gitignoreबाद में फ़ाइल में जोड़ा गया हो ।

आप चाहिए स्पष्ट रूप से उन्हें निकालें और फिर पूरी तरह उन्हें अनदेखा करने के लिए मैन्युअल रूप से अपने को हटाने के लिए प्रतिबद्ध।


यहां छवि विवरण दर्ज करें

यहां छवि विवरण दर्ज करें


4
मैं कभी भी उन फाइलों को कमिट नहीं करता, जिन्हें मैं नजरअंदाज करना चाह रहा हूं, लेकिन यह मुझे बताती हैfatal: pathspec '.idea' did not match any files
जोजेनबासिन

जब आप git स्टेटस टाइप करते हैं तो क्या आप उन्हें देखते हैं? अगर आप ऑटो में फाइलें जोड़ने के लिए चेकबॉक्स चिह्नित करते हैं, तो WebStorm ने उन्हें आपके लिए जोड़ दिया होगा
कोडवर्ड छिपकली

2
मुझे पता नहीं है, लेकिन ऐसा लगता है कि आपने मुझे जो आदेश दिया है, भले ही यह एक घातक त्रुटि लौटा हो .... फाइल अब कमिट करने के लिए दिखाई नहीं देती है।
जोजेनबासिन

आप -rपुनरावर्ती हटाने के लिए जोड़ने पर विचार कर सकते हैं
विश्रांत

90

जब आपको लगता है कि आपके काम को गड़बड़ कर दिया गया है, तो आप इस आदेश का उपयोग सब कुछ अप-टू-डेट करने के लिए कर सकते हैं।

git rm -r --cached .
git add .
git commit -am 'git cache cleared'
git push

इसके अलावा पिछले कमिट का उपयोग करने के लिए वापस जाएं:

git reset HEAD^ --hard

6
यदि आप रिमोट में बदलाव को पुश नहीं करना चाहते हैं तो गिट पुश का उपयोग न करें। हालाँकि अगर आपने किया है, तो एंड्रॉइड स्टूडियो के निचले भाग में संस्करण नियंत्रण टैब पर जाएं, पिछली प्रतिबद्ध पर राइट क्लिक करें और "यहाँ पर वर्तमान शाखा रीसेट करें" चुनें
स्वप्निल

रीसेट भाग सबसे अच्छा भ्रामक था। लेकिन मैंने 'गेट पुश' तक किया, और ठीक था।
सीन एस। लॉल

8

अगर आप git इग्नोर पर कोई बदलाव करते हैं तो आपको git cache भी clear करना होगा

> git rm -r --cached . 
> git add . 
> git commit -m 'git cache cleared'
> git push

अगर किसी विशेष फ़ोल्डर या फ़ाइल को निकालना चाहते हैं तो

git rm  --cached filepath/foldername


3

उसके बाद git-Ign फ़ाइल में परिवर्तन इस कमांड को चलाता है, यह कमांड सभी फ़ाइल कैश को हटा देगा न कि फाइल या परिवर्तन

git rm -r - कैश किया गया।

इस आदेश के निष्पादन के बाद फाइलों को प्रतिबद्ध करें

कैश से एकल फ़ाइल या फ़ोल्डर को हटाने के लिए इस कमांड का उपयोग करें

git rm - संचित फ़ाइलपथ / फ़ोल्डरनाम


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.