2012-04-12 23 views
7

से सिर्फ एक निर्देशिका खींचकर मेरे पास एक गिट रेपो है जिसे मैं खींचना चाहता हूं। मैं बिना किसी समस्या के सामान्य git pull करता हूं। मुद्दा यह है कि मैं रेपो से सिर्फ एक निश्चित निर्देशिका चाहता हूं।एक गिट रेपो

#Ignore all files 
/
#Except the one I want 
!/temp 

समस्या यह काम नहीं करता है: मेरी सोच मैं इस तरह एक नियम के साथ एक .gitignore फ़ाइल इस्तेमाल कर सकते हैं कि था। क्या यह करने का सही तरीका है या क्या कोई बेहतर तरीका है?

+0

बीटीडब्ल्यू, सभी फ़ाइलों को अनदेखा करने के लिए, मैं '/ *' – c00kiemon5ter

+1

के साथ जाऊंगा बस रिकॉर्ड के लिए: आप केवल एक निर्देशिका नहीं खींच सकते हैं। आप हमेशा ** इतिहास ** खींचते हैं, फाइल या निर्देशिका नहीं। बेशक, आप केवल कुछ फाइलों पर _work_ के लिए स्वतंत्र हैं। – fork0

उत्तर

25

git pull रिमोट शाखा लाता है और विलय करता है।

.gitignore केवल स्थानीय रूप से काम करता है, और मिलान प्रविष्टियों को git status पर प्रदर्शित होने से छिपाएगा और git add के साथ इंडेक्स में जोड़ा जा रहा है। यह वही नहीं है जो आप चाहते हैं।

आप क्या करना चाहते हैं, fetch रिमोट शाखा है, और उस से, आपको आवश्यक डीआईआर/फ़ाइल निकालें।

$ git fetch <remote> <branch> 
$ git checkout <remote>/<branch> -- relative/path/to/file/or/dir 

फ़ाइल/डीआईआर अब आपकी शाखा में होना चाहिए और सूचकांक में जोड़ा जाना चाहिए।

+0

वही था जो मुझे चाहिए था। आपको बहुत - बहुत धन्यवाद! – Dan

+0

क्या दूसरी पंक्ति पर 'निकालें' या 'रिमोट' कहना चाहिए? –

+0

@ ing0 धन्यवाद, यह एक टाइपो का कोर्स था;) – c00kiemon5ter

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