2012-03-05 11 views
7

this thread के अनुसार गिट स्पैस चेकआउट, गिट के sparse-checkout feature में बहिष्करण लागू किया जाना चाहिए। क्या यह?बहिष्कार

मान लें मैं निम्नलिखित संरचना है कि:

papers/ 
papers/... 
presentations/ 
presentations/heavy_presentation 
presentations/... 

अब मैं चेकआउट से presentations/heavy_presentation बाहर करने के लिए है, जबकि चेकआउट में आराम छोड़ने चाहते हैं। मैं इसे चलाने में कामयाब नहीं रहा हूं। इसके लिए सही वाक्यविन्यास क्या है?

उत्तर

4

मैं काम करने के लिए नीचे दिए गए की तरह कुछ उम्मीद होता:

/* 
!presentations/heavy_presentation 

लेकिन ऐसा नहीं है। और मैंने कई अन्य संयोजनों को आजमाया। मुझे लगता है कि बाहर निकालने के ठीक से लागू नहीं है और वहाँ यह (अभी भी) के आसपास कीड़े

कुछ की तरह हैं:

presentations/* 
!presentations/heavy_presentation 

हालांकि काम करता है और आप प्रस्तुतियों heavy_presentation फ़ोल्डर के बिना फ़ोल्डर मिल जाएगा।

तो कामकाज में सबकुछ स्पष्ट रूप से शामिल करना होगा।

+0

धन्यवाद, पुष्टि की गई।मैंने आपकी पोस्ट को एक और उदाहरण जोड़ने के लिए संपादित किया है जो काम नहीं कर रहा था। – krlmlr

3

मुझे एक ही समस्या थी। मैं की तरह कुछ के साथ यह तय हो:

!presentations/heavy_presentation 
presentations/* 

मैं कैसे समझते हैं कि यह काम करता है: यह नियम से फ़ाइल नियम पढ़ता है। अगर कुछ शामिल किया गया है, तो इसमें उस पथ को शामिल करने वाले सभी पथ शामिल हैं, और यह स्पैर चेकआउट के अंत तक अब और इसकी स्थिति नहीं बदलता है। यदि आप शामिल करने से पहले नियम को बहिष्कृत करते हैं, तो मेरी राय में यह पहले फ़ाइलों को हटा देगा और सभी को चिह्नित करने के अलावा चिह्नित करेगा।

मुझे पूरी तरह से यकीन नहीं है, यही वह है जो मैंने अपने अनुभव के आधार पर किया है और मेरे लिए काम कर रहा है। मुझे उम्मीद है कि यह किसी की मदद करेगा।

3

अफसोस की बात है कि उपरोक्त में से कोई भी मेरे लिए काम नहीं करता है इसलिए मैंने sparse-checkout फ़ाइल के विभिन्न संयोजन की कोशिश करने में बहुत लंबा समय बिताया।

मेरे मामले में मैं इंटेलिजे आईडीईए कॉन्फ़िगरेशन के साथ फ़ोल्डरों को छोड़ना चाहता था।

यहाँ मैं क्या किया है:

सामग्री निम्नलिखित

!.idea/* 
!.idea_modules/* 
/* 

भागो साथ


भागो git clone https://github.com/myaccount/myrepo.git --no-checkout

भागो git config core.sparsecheckout true

बनाया .git\info\sparse-checkout 'Git चेकआउट -' प्राप्त करने के लिए सारे दस्तावेज।


महत्वपूर्ण बात यह है कि यह काम करने के लिए फ़ोल्डर के नाम के बाद /* जोड़ने के लिए किया गया था।

मेरे पास गिट 1.9

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

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