git - सभी क्लोन/मशीनों पर गिट एंड-ऑफ-लाइन(सीआरएलएफ से एलएफ) को कैसे अक्षम करें?



newline gitattributes (1)

चूंकि कोई other posts from सकता है, गिट के अंतराल के सामान्यीकरण में इसके पेशेवर और विपक्ष हैं। मेरे पास एक विशेष विंडोज़-एकमात्र प्रोजेक्ट है जहां मुझे लगता है कि सबसे अच्छी बात यह है कि अंत में सामान्य सामान्यीकरण को अक्षम करना है। यही है, मैं सभी न्यूलाइन (जिनमें से अधिकांश CRLF ) को बरकरार रखना चाहते हैं, बजाय उन्हें जीएफ को सामान्य रूप से दृश्यों के पीछे सामान्यीकृत करना है, और मैं चाहता हूं कि यह परिवर्तन सभी मशीनों पर भंडार के सभी क्लोन को प्रभावित करे। सवाल यह करने का सबसे प्रभावी तरीका है।

गिट एंड-ऑफ-लाइन सामान्यीकरण की अधिकांश चर्चा core.autocrlf . core.autocrlf संदर्भ में हैं, और मैं core.autocrlf=false को सेट करके अपना लक्ष्य पूरा कर सकता हूं। हालांकि, यह एक गिट-कॉन्फ़िगरेशन सेटिंग है, और मेरा मानना ​​है कि किसी को मशीन द्वारा प्रत्येक मशीन पर इसे अलग से सेट करना होगा। यदि सही है, तो ऐसा लगता है कि त्रुटि प्रवण होती है, खासकर जब msysgit इंस्टॉलर core.autocrlf=true . core.autocrlf=true को सेट करने में मार्गदर्शन करता core.autocrlf=true


लगता है कि प्रत्येक मशीन पर core.autocrlf . core.autocrlf अलग से सेट करने से बचने का सबसे अच्छा तरीका एक .gitattributes फ़ाइल को एक पंक्ति वाली .gitattributes जांचना प्रतीत होता है

* -text

या, यदि आपके पास गिट का पुराना संस्करण है तो

* -crlf

यह गिट को बताता है कि, सभी पथों (इस प्रकार * ) के लिए, अंतराल के सामान्यीकरण का प्रयास नहीं किया जाना चाहिए। जहां तक ​​मैं कह सकता हूं, इसका कोई अन्य दुष्प्रभाव नहीं होना चाहिए। विशेष रूप से, यह परिवर्तित नहीं होना चाहिए कि कैसे diffs उत्पन्न होते हैं (इसमें अलग विशेषता diff / -diff ) या विलय कैसे प्रबंधित किए जाते हैं (इसमें एक अलग विशेषता merge / -merge )।

अधिक जानकारी के लिए, मैं इन संसाधनों का सुझाव देता हूं:

  1. Gitattributes प्रलेखन ( git help attributes या एक ऑनलाइन प्रतिलिपि ), जो विस्तार से वर्णन करता है कि कैसे अंतराल सामान्यीकरण काम करता है और विभिन्न विशेषताओं के विशेष प्रभाव। (शायद सबसे प्रासंगिक text , crlf , diff , merge , और binary ।)
  2. गिट मेलिंग सूची धागा क्या "टेक्स्ट" विशेषता केवल अंतराल के सामान्यीकरण व्यवहार को निर्दिष्ट करने के लिए है, या क्या इसका व्यापक प्रभाव है? (30 मार्च, 2012), जो विभिन्न विशेषताओं के अर्थ पर विस्तार करता है, और यह स्पष्ट करता है कि -text अर्थ यह नहीं है कि "यह एक बाइनरी फ़ाइल है"।





core.autocrlf