2012-01-22 10 views
16

मैं एक विशिष्ट शाखा में किए गए सभी फाइलों को कैसे सूचीबद्ध करूं? मैंने शाखा में लगभग 40+ फाइलें की हैं, और मुझे फ़ाइल नाम ढूंढने की ज़रूरत है क्योंकि मैं कुछ डीबग करने की कोशिश कर रहा हूं, जब मुझे फ़ाइल नाम याद नहीं आते हैं तो करना मुश्किल होता है।मुझे शाखा में किए गए फाइलों की सूची कैसे मिलती है?

git log केवल मुझे कामों की एक लंबी सूची देता है लेकिन वास्तविक फाइल नहीं।

उत्तर

12

क्या आपने गिट एलएस-पेड़ की कोशिश की है?

git ls-tree --name-only -r <branch_name> 

- नाम केवल आपको केवल फाइल नाम देता है। -r उप निर्देशिकाओं में recurses।

यदि आप इसमें रिकर्स करने से पहले सूचीबद्ध उप-निर्देशिका का नाम चाहते हैं, तो तर्क सूची में जोड़ें।

+0

अद्भुत जवाब। आपके द्वारा उत्तर दिया गया प्रश्न तुरंत स्पष्ट नहीं है, और मुझे गिट लॉग के बारे में पता है। – octopusgrabbus

+0

मुझे अपनी शाखा से कुछ ही जगहों की बजाय फाइलों की सूची मिली है। 'गिट लॉग --नाम-केवल' शाखा – Eugene

+0

@Eugene में काम करके संशोधित फ़ाइलों को देखने के लिए उचित उत्तर की तरह दिखता है: एक डाउन वोट थोड़ा कठोर है, क्या आपको नहीं लगता? – Carl

4

git ls-files कमांड वर्तमान शाखा पर नवीनतम प्रतिबद्धता में मौजूद सभी फ़ाइलों को सूचीबद्ध करता है।

या, आप git diff --name-only का उपयोग किसी भी दो मनमाने ढंग से काम करने वाली फ़ाइलों की सूची दिखाने के लिए कर सकते हैं।

3

git log --name-status नाम और प्रत्येक में बदली हुई फाइलों की स्थिति दे देंगे प्रतिबद्ध

+0

नाम से आपका नाम शाखा का नाम है? – iCodeLikeImDrunk

+0

सही उत्तर, शानदार –

13

अपनी शाखा master से निकाला गया था, तो आप सभी नई फ़ाइलों को जहां शाखाओं के बाद जोड़ा सूची इस आदेश का उपयोग कर सकते हैं:

git diff master...new-branch --name-status --diff-filter=A 

--diff-filter के लिए उपलब्ध फिल्टर कर रहे हैं:

Added (A), Copied (C), Deleted (D), Modified (M), Renamed (R) 
+0

यह मुझे काम नहीं करता – kkudi

+0

मुझे कुछ मदद मिलती है, आपको अधिक जानकारी प्रदान करनी चाहिए। क्या आपको गलत आउटपुट मिलता है? क्या आपको कोई त्रुटि मिलती है? –

+0

लौटाई गई फाइल खाली है। गिट लॉग - नाम-स्थिति ठीक काम किया। – kkudi

-1

कोशिश smartgit का उपयोग कर। यह गिट के लिए गुई क्लाइंट है। इसमें बहुत उपयोगी यूआई है और गैर-वाणिज्यिक उपयोग के लिए नि: शुल्क है।

+0

इसने सीधे अपने प्रश्न का उत्तर नहीं दिया, लेकिन जानकारी उपयोगी है। धन्यवाद। – octopusgrabbus

+0

Soooo, आप यह देखने के लिए स्मार्टगिट का उपयोग कैसे करते हैं कि कौन सी फाइलें की गई हैं? वह वास्तव में सवाल का जवाब देगा। –

10

git log --name-only मेरे लिए काम किया।

+0

यह एकमात्र ऐसा उत्तर था जो वास्तव में प्रश्न को संबोधित करता है। धन्यवाद! –

0

यह एक उपयोगी हो सकता है, अगर आप सभी अलग फ़ाइलों कि शाखाओं के बाद से संशोधित किया गया जानना चाहता हूँ:

Git लॉग --name-स्थिति का विकास ... BRANCHNAME | grep -E "^ [एएमडी] \ एस" | तरह -u

और इस प्रकार उनमें से सबसेट कि आप संशोधित सूची जाएगा:

Git लॉग --name-स्थिति का विकास ... BRANCHNAME --author = | grep -E "^ [AMD] \ s" | तरह -u

1

Git लॉग --name-केवल मेरे लिए काम किया।

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