2013-02-24 27 views
14

मेरे पास मेरे रेपो में कई सबफ़ोल्डर हैं, जिनमें कुछ build/ निर्देशिकाएं हैं जिन्हें मैं अपना कोड करते समय अनदेखा करना चाहता हूं।.gitignore में सबफ़ोल्डर

  • */build/ (यूनिक्स वाइल्डकार्ड)
  • build/ (Git अनदेखी फ़ाइलें/फ़ोल्डर के रास्ता)

मैं: मैं इसे समझ, वहाँ डर के सभी की अनदेखी करने के दो तरीके हैं Git ignore sub folders मिला है लेकिन इसमें दो जवाब हैं और मैं जानना चाहता हूं कि दोनों दृष्टिकोणों के बीच क्या अंतर (कोई नहीं?) है। क्या एक ही नियम फाइलों पर लागू होता है?

उत्तर

32

build/ ऐसा करने का सही तरीका है। यह build निर्देशिकाओं के अंदर मौजूद किसी भी फाइल को अनदेखा कर देगा, इससे कोई फर्क नहीं पड़ता कि ये निर्देशिका आपके रेपो में कितनी गहरी हैं।

*/build/ साधन build निर्देशिका है कि आपके रेपो अंदर वास्तव में गहरी एक स्तर अनदेखा कर देते हैं। तो उदाहरण के लिए build और foo/bar/build के अंदर फ़ाइलों को अनदेखा नहीं किया जाएगा।

यदि आपको अधिक बढ़िया अनाज नियंत्रण की आवश्यकता है, तो आप हमेशा उपशीर्षक के रूप में ! का उपयोग करके बाहर करने के लिए विशिष्ट निर्देशिकाएं जोड़ सकते हैं।

+1

मैंने इस पर सभी प्रकार की विविधताओं का प्रयास किया है और निर्देशिका को अनदेखा करने और उस निर्देशिका की सभी उप-निर्देशिकाओं में सभी फ़ाइलों को अनदेखा करने के लिए एक नंगे रेपो पर 'गिट एड' नहीं मिल सकता है। मैंने 'dirname /', 'dirname/*', 'dirname/**', 'dirname/*/*', यहां तक ​​कि निराशा 'dirname/*/*/* ',' dirname/*/*/* में भी कोशिश की है/* ',' dirname/*/*/*/*/* '। – Chris

+1

@Chris 'dirname /' काम करना चाहिए। क्या आपका मतलब है '- बेयर' रेपो? – Simon

+0

धन्यवाद @ सिमॉन, तो यह कुछ और होना चाहिए। मेरा मतलब यह नहीं है - बेयर। मैं स्रोत फ़ाइलों और '.gitignore' से भरे हुए निर्देशिका में' गिट इनिट 'चलाता हूं,' गिट एड --all .' (के साथ या बिना)) और इसमें मेरी नामांकित निर्देशिका के तहत प्रत्येक गैर-खाली उपनिर्देशिका शामिल है। मैं 1.9.4.msysgit.1 का उपयोग कर रहा हूं। फ़ोल्डर्स को हटाकर इसे फिर से हल किया गया है और फिर अनुक्रमण के बाद उन्हें दोबारा जोड़ दिया, सोचा कि मैं दस्तावेज़ या वाक्यविन्यास को गलत समझाऊंगा। – Chris