Git: सभी अनट्रैक की गई फ़ाइलों को कैसे हटाएं?


40

मैं संस्करण नियंत्रण के लिए Git का उपयोग कर रहा हूं। अब मैं अपनी स्थानीय मशीन की उन सभी फाइलों को हटाना चाहता हूं, जिन्हें ट्रैक नहीं किया गया है।

मैं उपयोग कर सकता हूं

git status

इन फ़ाइलों को सूचीबद्ध करने के लिए, लेकिन मैं उन सभी को कैसे हटा सकता हूं?


1
खिचड़ी भाषा आप बस एक अलग जगह पर सभी फाइलों की जाँच करें एक अपनी मशीन और फिर पुराने संस्करण को हटा दें?
निफ़ल

1
यकीन है कि मैं कर सकता हूँ, लेकिन वहाँ एक आसान तरीका नहीं है?
RoflcoptrException

जवाबों:


55

यदि आपके पास इसे अनदेखा करना है, तो उपयोग करें git clean -xf। आप कर सकते हैं git clean -dfलेकिन यह भी अन-ट्रैक की गई निर्देशिकाओं को हटा देगा। -nड्राई-रन के लिए उपयोग करें ।

अन-ट्रैक की सफाई देखें



8
-xfनष्ट कर दिया जाएगा और अनदेखा फ़ाइलें और यह शायद नहीं है कि आप क्या चाहते हैं। उपयोग करें -nfऔर देखभाल के साथ आगे बढ़ें। देखें: stackoverflow.com/questions/61212/…
Mr_and_Mrs_D

2
याद रखें, यह आपके पर्यावरण / IDE फ़ोल्डर (जैसे .vagrant या .idea (phpstorm)) को हटा सकता है
timhc22

1
ध्यान रहे! gitignored फ़ाइलों को हमेशा के लिए शुद्ध किया जाएगा। -100
सेफर


5

उपयोगकर्ता इंटरैक्टिव दृष्टिकोण:

git clean -i -fd

Remove .classpath [y/N]? N
Remove .gitignore [y/N]? N
Remove .project [y/N]? N
Remove .settings/ [y/N]? N
Remove src/com/amazon/arsdumpgenerator/inspector/ [y/N]? y
Remove src/com/amazon/arsdumpgenerator/manifest/ [y/N]? y
Remove src/com/amazon/arsdumpgenerator/s3/ [y/N]? y
Remove tst/com/amazon/arsdumpgenerator/manifest/ [y/N]? y
Remove tst/com/amazon/arsdumpgenerator/s3/ [y/N]? y


फ़ाइल के लिए इंटरेक्टिव -f के लिए
-d निर्देशिका के लिए -d

नोट: ऐड -एन या -dry- चलाने के लिए बस यह जाँच करें कि यह क्या करेगा।


3

git clean -fदृश्य-रहित विज़टेड फ़ाइलों और निर्देशिकाओं के बारे में उल्लेख करने लायक सूक्ष्मता है । यदि आपके पास एक ऐसी अनट्रैकड डायरेक्टरी है जिसमें ऐसी फाइलें हैं, जो एक फोर्टियोरी, अनट्रैकड हैं, तो git clean -fउन अनट्रैक फाइल्स को डिलीट नहीं करेंगे।

दूसरे शब्दों में, यह हमेशा ऐसा नहीं होता है जो git clean -fसभी अनट्रैक की गई फ़ाइलों को हटा देगा। एक बेहतर व्याख्या git clean -fयह है कि यह उन सभी अनट्रैक की गई फ़ाइलों को हटा देता है जो अनट्रेक्टेड डायरेक्ट्रीज़ में नहीं हैं ।

git clean -f -d अनट्रैक की गई फ़ाइलों को हटाने के लिए उपयोग किया जाना चाहिए जो कि अनट्रैकड डायरेक्ट्रीज़ में हैं और उन सभी अनट्रैकड फाइल्स को डिलीट करने का कोई तरीका नहीं दिखता है, बिना अनट्रैक्ड डाइरेक्टरीज़ को डिलीट किए बिना जिनमें केवल अनट्रैक्ड फाइल्स हैं।

git clean -f -d -nवास्तव में देखने के लिए उपयोग करें कि आप अपनी कार्यशील निर्देशिका को पुनर्स्थापित करने के लिए क्या करना चाहते हैं, यह बिना किसी फ़ाइल के बिना क्या होगा। फिर git clean -f -dऐसा करने के लिए उपयोग करें।

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