2010-01-04 11 views
7

उसे केवल उन्हीं रिमोट के लिए Git में विशिष्ट फ़ाइलों को अनदेखा करना संभव है? उदाहरण के लिए, मैं एक ऐप्स Heroku पर होस्ट के लिए एक फ़ाइल में एडब्ल्यूएस S3 क्रेडेंशियल्स (s3.yml) भंडारण कर रहा हूँ, इस प्रकार मैं अपने रेपो में s3.yml जाँच करने के लिए तैनाती के लिए काम करने के लिए की जरूरत है। हालांकि, मैं GitHub के स्रोत के रूप में अच्छी तरह से प्रकाशित करना चाहते हैं, तो मैं s3.yml रेपो से बाहर रखने के लिहाज से होगा। मैं इसे पसंदरिमोट पर आधारित गिट-अनदेखी फाइलें?

#.gitignore 
github:config/s3.yml 

कुछ काम कर रहा है, लेकिन नहीं Git डॉक्स में कुछ भी खोजने के लिए सक्षम किया गया है कल्पना कर सकते हैं। क्या यह संभव है? या मुझे दो अलग-अलग प्रतिनिधि बनाए रखने की ज़रूरत है?

धन्यवाद!

उत्तर

3

यदि आप इसे प्रकाशित करते हैं तो वह फ़ाइल हमेशा रेपो में रहती है। भले ही आपने एक शाखा बनाई और फ़ाइल को गिट-आरएमडी किया हो, फिर भी लोग हमेशा उस संस्करण को देख पाएंगे जिसमें अभी भी फ़ाइल थी। रिमोट पर एक फ़ाइल को पहुंचने के दौरान मुझे एक एकल भंडार का उपयोग करने का कोई तरीका नहीं दिखता है।

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

+0

मैं थोड़े तो उम्मीद थी। मैं बस उम्मीद कर रहा था कि गिट लोगों ने हमारे लिए यह काम किया था - वे बहुत ही उज्ज्वल हैं, सब के बाद: डी – trydionel

3

Heroku बात की इस तरह के लिए config-वार्स है। उनकी राय यह प्रतीत होती है कि एस 3 जानकारी गिट में जांच नहीं करनी चाहिए। इस तरह की चीज़ की अपेक्षा कैसे कर रहे हैं, इस बारे में अधिक जानकारी के लिए this link देखें।

+0

ग्रेट लिंक - मैंने पहले यह नहीं देखा था। यह निश्चित रूप से उदाहरण के मामले का ख्याल रखता है! – trydionel

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