2012-10-01 8 views
30

कहें कि मैं एक फ़ोल्डर में एक गिट भंडार शुरू करता हूं, और इसमें कई उपनिर्देशिकाएं हैं Iगिट स्थिति -> उन फ़ाइलों को दिखाएं जो उपनिर्देशिका में जोड़े जाएंगे (चरणबद्ध)

मेरे पास उपनिर्देशिका में फ़ाइलों को बाहर करने के लिए कई ग्लोबिंग पैटर्न .gitignore हैं। हालांकि, जब मैं git statusकुछ भी पर मंच करने से पहले करता हूं, तो गिट स्थिति केवल उपफोल्डर्स के नाम दिखाती है, जो कि प्रत्येक उपनिर्देशिका में कौन सी फाइलें जोड़ दी जाएंगी (चरणबद्ध) यदि git add . है।

दिलचस्प बात यह है, हालांकि, git status फ़ाइलों प्रतिबद्ध मैं git add . के साथ फ़ाइलें चरण के बाद हो जाएगा कि के बारे में स्पष्ट है।

क्या git status की फ़ाइलों के लिए फ़ाइलों के बारे में स्पष्ट होने के लिए पूछने के लिए वैसे भी है?

उत्तर

2

कैसे बजाय रेखा के साथ अपने उप निर्देशिका में एक .gitignore फ़ाइल लगाने के बारे में

# Ignore everything in this directory 
* 
# Except these file 
!.gitignore 
!file1 
!file2 
!file3 
+0

मेरे पास मेरे '.gitignore' में कुछ भी नहीं है जो आपके द्वारा पोस्ट की गई चीज़ों की तरह दिखता है (यानी अपवादों के साथ निर्देशिका या उपनिर्देशिका को अनदेखा कर रहा है)। इसके अलावा, यह क्यों मायने रखता है? वैसे, 'गिट स्टेटस' फाइलों की सूची देता है जो 'गिट एड' के साथ * स्टेजिंग के बाद * सही तरीके से किया जाएगा। –

+1

मुझे पता है कि आप नहीं करते हैं। रूट '.gitignore' से निर्देशिका को हटाएं और अपनी उप निर्देशिका में यह' .gitignore' जोड़ें - आपके पास एक से अधिक हो सकते हैं। वे घोंसला –

47

प्रयास करें:

git status -u 

या लंबे समय फार्म:

git status --untracked-files 

जो दिखाएगा अनचाहे निर्देशिका में व्यक्तिगत फाइलें।

यहाँ git-status man page से -u विकल्प का विस्तृत विवरण दिया गया है:

enter image description here

+0

यह वही था जो मुझे चाहिए :) – leventunver

5

git ls-files -o --exclude-standard

अपने worktree में हर रास्ता है कि मंचन किया जाता है नहीं (-o) और नहीं होगा git add (--exclude-standard) द्वारा अनदेखा किया गया।

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