Git तीन स्तरों पर कॉन्फ़िगरेशन मानों का समर्थन करता है:
- प्रति-सिस्टम वैश्विक सेटिंग्स (संग्रहीत
/etc/git-core) - प्रति उपयोगकर्ता वैश्विक सेटिंग्स (में संग्रहीत
~/.gitconfig) - प्रति-भंडार स्थानीय सेटिंग्स (में संग्रहीत
$REPO/.git/config)
ये विकल्प अधिकांश आधार को कवर करते हैं लेकिन मैं चौथे स्तर को संभालने के लिए एक रास्ता तलाश रहा हूं। मेरे पास रिपॉजिटरी का एक (बहुत) बड़ा संग्रह है जिसके लिए मुझे user.emailअपने सामान्य से भिन्न मूल्य का उपयोग करने की आवश्यकता है । ये रिपॉजिटरी अक्सर स्वचालित स्क्रिप्ट के माध्यम से बनाई और हेरफेर की जाती हैं, और रिपॉजिटरी स्थानीय सेटिंग्स के अनुसार स्थापित करना बोझिल है।
प्रश्न में सभी रिपॉजिटरी मेरे स्थानीय सिस्टम पर एक निश्चित पथ उपसर्ग के तहत स्थित हैं। क्या कहीं एक कॉन्फ़िगरेशन मान सेट करने का एक तरीका है जो उस पथ के तहत सभी रिपॉजिटरी द्वारा विरासत में मिलेगा? (तरह तरह की .htaccessसेटिंग्स फ़ाइल सिस्टम को सभी तरह से विरासत में मिला है।) शायद वैश्विक कॉन्फ़िगरेशन फ़ाइल में सशर्त मान सेट करने का एक तरीका होगा? UNIX माहौल में खदान जैसी रिपॉजिटरी के सेट के साथ और क्या व्यवस्था की जा सकती है?
.gitconfigउनके द्वारा बनाई गई प्रत्येक निर्देशिका में स्क्रिप्ट को हैक करने के लिए है। उदाहरण के लिए, IIRC Android का रेपो ऐसा कर सकता है, लेकिन आपको इसका पता लगाने के लिए स्रोत को ध्यान से पढ़ना होगा। (मुझे पूरी तरह से यकीन नहीं है, मैंने थोड़ी देर में ऐसा नहीं किया है।)