2013-07-11 8 views
14

दिखाने मैं सोच रहा हूँ कि git clone --verbose बहुत वर्बोज़ नहीं है। आदेश निष्पादित करने का आउटपुट निम्न है:Git क्लोन वर्बोज़ मोड - प्रत्येक आवक वस्तु

$ git clone --verbose <repo> 
remote: Counting objects: 184, done 
remote: Finding sources: 100% (184/184) 
remote: Total 184 (delta 66), reused 183 (delta 66) 
Receiving objects: 100% (184/184), 18.90 KiB, done. 
Resolving deltas: 100% (66/66), done. 

अपेक्षित व्यवहार प्राप्त वस्तुओं की सूची एक-एक करके देखना है। क्या यह कुछ अन्य विकल्पों का उपयोग कर संभव है?

+0

मज़ा इस तथ्य के बाद - यदि 'git' वास्तव में रिपोर्ट प्रत्येक वस्तु किया एक से जैसा कि आप प्रस्तावित करते हैं, फिर एक 'गिट क्लोन लिनक्स कर्नेल रिपोजिटरी का उत्पादन 2 मिलियन से अधिक लाइनों का उत्पादन करेगा। शायद एक अच्छा कारण इसे उस तरह से लागू नहीं किया है ... तुम सच है कि जानकारी चाहते हैं, तो आप 'कोशिश कर सकते हैं Git रेव-सूची --all' --objects ... – twalberg

+0

मैं देख रहा हूँ, क्या तुम जानते हो कि" Git rev- है सूची --objects --all "ऑब्जेक्ट प्राप्त करने" के लिए "गिट क्लोन" ऑब्जेक्ट्स का एक ही क्रम प्रदान करें? मुझे इसकी आवश्यकता है क्योंकि मुझे कभी-कभी ऑब्जेक्ट्स प्राप्त करने पर नेटवर्क त्रुटि मिल रही है और मैं इस वस्तु को पेड़ में बिल्कुल ठीक करना चाहता हूं। – erkfel

+0

मुझे आश्चर्य होगा कि आपकी "नेटवर्क त्रुटि" किसी विशेष रूप से किसी विशिष्ट ऑब्जेक्ट से संबंधित है जो वर्तमान में एक टीसीपी सॉकेट पर स्थानांतरित हो रही है। ऑर्डर संभवतः समान नहीं है, क्योंकि 'गिट' एक पैक फ़ाइल उत्पन्न कर रहा है और भेज रहा है जिसमें अनुरोधित ऑब्जेक्ट्स हैं, और ऑर्डर ऑब्जेक्ट्स को पैक फ़ाइल में रखा जाता है, कुछ मनमाना लगता है। – twalberg

उत्तर

13

यह संभव वस्तुओं को सूचीबद्ध नहीं है (फाइलें, करता है, धब्बे, जो कुछ भी) एक-एक करके, बस क्योंकि Git उन्हें दक्षता कारणों के लिए एक एकल फाइल में पैक। इसी कारण से, क्लोनिंग करते समय आपको केवल एक छिपी हुई .git फ़ोल्डर दिखाई देगी, फ़ाइलों को केवल तभी बनाया जाएगा जब पूर्ण पैक फ़ाइल डाउनलोड हो।

यदि आप सोच रहे हैं, तो इन पैक फ़ाइलों को .git/objects/pack/ पर tmp_pack_XXXXXX नाम से डाउनलोड किया जाएगा। (बाद में, इसका नाम बदलकर pack-*.pack से संबंधित pack-*.idx फ़ाइल)

0

मैं @Lekensteyn उत्तर स्वीकार करता हूं।

आप, Git दूरस्थ आदेश का पता लगाने के लिए अपने terminal.This में पर्यावरण चर निम्नलिखित जोड़ना चाहते हैं कि आप क्या एक Git आदेश के पर्दे के पीछे चल रहा है में झांक सकते हैं करने के लिए मदद करता है।

export GIT_TRACE_PACKET=1 
export GIT_TRACE=1 
export GIT_CURL_VERBOSE=1 

संदर्भ: https://git-scm.com/book/en/v2/Git-Internals-Environment-Variables

नमूना क्लोनिंग परिणाम निर्यात enter image description here

enter image description here

enter image description here enter image description here

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