स्थानीय गिट रेपो में सूची फ़ाइलें?


347

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

अब मैं उन फाइलों और ब्राउज़रों में ब्राउज़ करना चाहता हूं, जिन्हें मैंने अपने सर्वर पर अपलोड किया है, लेकिन मुझे नहीं पता कि कैसे?

मैं समझता हूं कि Git किसी प्रकार की विशेष फ़ाइल पदानुक्रम का उपयोग करता है और मैं अपनी फ़ाइलों को सूचीबद्ध नहीं कर सकता, है ना?

लेकिन मुझे उन्हें सूचीबद्ध करने और अपनी फ़ाइलों को ब्राउज़ करने के लिए कैसे करना होगा?

जवाबों:


568

यह आदेश:

git ls-tree --full-tree -r --name-only HEAD

पहले से ही प्रतिबद्ध फ़ाइलों की सूची आपके गिट रेपो द्वारा ट्रैक की जा रही है।


338

इस आदेश का प्रयास करें:

git ls-files 

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

http://www.kernel.org/pub/software/scm/git/docs/git-ls-files.html


3
उत्तर के रूप में समान आउटपुट, लेकिन --name- केवल (लघु प्रारूप) के साथ। अच्छा चीनी मिट्टी के बरतन।
रॉन ई

21
एक बात ध्यान दें: स्वीकृत उत्तर एक नंगे रेपो पर काम करता है, लेकिन यह उत्तर नहीं देता है।
ट्रेबोर रूड

1
यह Git कमांड बहुत अधिक क्लीनर आउटपुट बनाता है और आदर्श है यदि आप सिर्फ Git द्वारा ट्रैक की गई फ़ाइलों की सूची चाहते हैं।
mic

वहाँ केवल direcotries सूचीबद्ध करने के लिए एक रास्ता है .. कुछ पसंद है git ls-directories ?
रमेश पारीक

12
चेतावनी: यदि आप एक उपनिर्देशिका में हैं, तो यह केवल उस पेड़ के नीचे फाइलों को सूचीबद्ध करता है - प्रश्न "रिपॉजिटरी में सभी फाइलें" बताता है, लेकिन यह केवल सच है यदि आप रेपो की जड़ में हैं।
विम

2

git ls-tree --full-tree -r HEADऔर git ls-filesएक ही बार में सभी फ़ाइलों को वापस करें। सैकड़ों या हजारों फ़ाइलों के साथ एक बड़ी परियोजना के लिए, और यदि आप किसी विशेष फ़ाइल / निर्देशिका में रुचि रखते हैं, तो आपको विशिष्ट निर्देशिकाओं का पता लगाने के लिए अधिक सुविधाजनक मिल सकता है। आप इसे उस निर्देशिका की ID / SHA-1 प्राप्त करके कर सकते हैं जिसे आप एक्सप्लोर करना चाहते हैं और फिर उपयोग करना चाहते हैं git cat-file -p [ID/SHA-1 of directory]। उदाहरण के लिए:

git cat-file -p 14032aabd85b43a058cfc7025dd4fa9dd325ea97
100644 blob b93a4953fff68df523aa7656497ee339d6026d64    glyphicons-halflings-regular.eot
100644 blob 94fb5490a2ed10b2c69a4a567a4fd2e4f706d841    glyphicons-halflings-regular.svg
100644 blob 1413fc609ab6f21774de0cb7e01360095584f65b    glyphicons-halflings-regular.ttf
100644 blob 9e612858f802245ddcbf59788a0db942224bab35    glyphicons-halflings-regular.woff
100644 blob 64539b54c3751a6d9adb44c8e3a45ba5a73b77f0    glyphicons-halflings-regular.woff2

ऊपर दिए गए उदाहरण में, 14032aabd85b43a058cfc7025dd4fa9dd325ea97उस निर्देशिका का ID / SHA-1 है जिसे मैं एक्सप्लोर करना चाहता था। इस मामले में, परिणाम यह था कि उस निर्देशिका के भीतर चार फाइलें मेरे गिट रेपो द्वारा ट्रैक की जा रही थीं। यदि निर्देशिका में अतिरिक्त फ़ाइलें थीं, तो इसका मतलब होगा कि उन अतिरिक्त फ़ाइलों को ट्रैक नहीं किया जा रहा था। आप git add <file>...पाठ्यक्रम का उपयोग करके फ़ाइलें जोड़ सकते हैं ।


आप बस cdउस निर्देशिका में भी जा सकते हैं जिसमें आप रुचि रखते हैं और छोड़ना चाहते हैं --full-tree
नाथन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.