कनवर्ट करें मेरे पास ISO-8859-1
में फ़ाइलों वाली एक बड़ी सीवीएस रिपोजिटरी है और इसे गिट में परिवर्तित करना चाहते हैं।गिट रिपोजिटरी फ़ाइल एन्कोडिंग
निश्चित रूप से मैं एन्कोडिंग के लिए ISO-8859-1
का उपयोग करने के लिए गिट को कॉन्फ़िगर कर सकता हूं, लेकिन मैं इसे utf8
में रखना चाहता हूं।
अब iconv
या recode
जैसे टूल के साथ मैं अपने काम करने वाले पेड़ में फ़ाइलों के लिए एन्कोडिंग को परिवर्तित कर सकता हूं। मैं इसे converted encoding
जैसे संदेश के साथ प्रतिबद्ध कर सकता हूं।
मेरा प्रश्न अब है, क्या पूरा इतिहास बदलने की संभावना है? या तो जब सीवी से गिट या बाद में परिवर्तित हो जाते हैं। मेरा विचार एक स्क्रिप्ट लिखना होगा जो गिट रिपॉजिटरी में प्रत्येक प्रतिबद्धता को पढ़ता है और इसे utf8
में परिवर्तित करने और इसे एक नए गिट भंडार में प्रतिबद्ध करने के लिए होगा।
क्या यह संभव है (मैं हैश कोड के बारे में अनिश्चित हूं और कैसे काम करता हूं, शाखाओं और टैगों के माध्यम से कैसे चलना है)। या कोई ऐसा उपकरण है जो इस तरह कुछ संभाल सकता है?
हां, आप इतिहास को फिर से लिख सकते हैं, लेकिन शायद आपको यह नहीं करना चाहिए: आपको कभी भी एक भंडार को फिर से लिखना नहीं चाहिए, जिसे आपने पहले ही कहीं धक्का दिया है। मेरी राय है: 'iconv' और सामान्य प्रतिबद्धता जाने का तरीका है। – KingCrunch
ठीक है, धन्यवाद @ किंग कंचन। लेकिन चूंकि मैंने गिट रिपोजिटरी को नया बनाया है, इसलिए इसे कहीं भी धक्का नहीं दिया जाता है। और मैं पहले के इतिहास के आधार पर 'utf8'' एन्कोडिंग के साथ एक दूसरा भंडार बनाने के लिए स्वीकार करूंगा। जो मूल रूप से वही है जो मैं मौजूदा रेपो को संशोधित नहीं करता। –