संपादित करें: गिट चरित्र एन्कोडिंग के साथ गड़बड़ नहीं करता है। यह अभी भी ज्ञान को साझा करने और अन्य गलतियों को करने से बचने के लिए यहां है।चरित्र एन्कोडिंग के साथ गड़बड़ करने का कारण क्या हो सकता है?
संदर्भ: मेरी उद्यम एक SVN भंडार का उपयोग करता है। मैं इस भंडार के साथ बातचीत करने के लिए एक ग्राहक के रूप में गिट-एसवीएन का उपयोग कर रहा हूं। प्रोजेक्ट में सभी टेक्स्ट फ़ाइलें विंडोज़ डिफ़ॉल्ट एन्कोडिंग (सीपी-पी) के साथ एन्कोडेड (और होनी चाहिए) हैं। मैं गिट-एक्सटेंशन का उपयोग करता हूं, और कभी-कभी पायलट गिट के लिए कमांड लाइन का उपयोग करता हूं।
मैंने क्या किया: पिछले 3 दिनों के दौरान, मैं एक नई सुविधा पर काम कर रहा था, और मैंने कई स्थानीय काम किए। आखिर में मैंने इन सभी को एक इंटरैक्टिव रीबेस का उपयोग करके एक ही में बदल दिया, फिर मैंने एक ही प्रतिबद्धता में svn भंडार पर सब कुछ धक्का देने के लिए गिट svn dcommit का उपयोग किया।
तब क्या हुआ: एक कॉलेग्यू ने मुझे बताया कि सभी उच्चारण उन फ़ाइलों में गड़बड़ हो गए थे जिन्हें मैंने संशोधित किया था, और मेरी प्रतिबद्धता के बाद नई फाइलों में। मैंने पहले ही गिट + एसवीएन की स्थापना के साथ उसी भंडार में उच्चारण के साथ टेक्स्ट फाइलें पहले ही कर दी थीं, और पहली बार मुझे इस मुद्दे का सामना करना पड़ा।
मेरे जांच: मैंने किया था निम्नलिखित बातें की जांच के लिए: नोटपैड के साथ ++ फ़ाइलों को खोला, और उन्हें देखने के लिए (विंडोज़ डिफ़ॉल्ट और UTF-8 सहित) सबसे वर्तमान एन्कोडिंग की कोशिश की: उनमें से कोई भी ठीक से लहजे प्रदर्शित कर सकता है, और विभिन्न उच्चारण हमेशा अजीब ग्लिफ के समान अनुक्रम द्वारा प्रस्तुत किए जाते हैं।
अस्थायी वर्कअराउंड: मैंने तुरंत गिट एक्सटेंशन के साथ एक रिवर्ट प्रतिबद्ध बनाया और इसे "डिक्यूटेड" किया।
सवाल: मेरी उद्यम SVN भंडार ठीक है, लेकिन अब मैं हल करने के लिए दो निम्नलिखित समस्या है:
- समझे लहजे के साथ पात्रों के साथ क्या हुआ
- SVN से मेरे काम को पुनः प्राप्त इतिहास और इसे उचित तरीके से प्रतिबद्ध करें (यदि संभवतः उच्चारण के साथ सभी पात्रों की समीक्षा किए बिना संभव है)
क्या कोई कुछ संकेत प्रदान कर सकता है (मैं गिट के लिए नया हूं)?
तुम्हारा मतलब है कि आपके पाठ फ़ाइलें सामग्री बदल गया था, रास्तों मत करो;
+1 "Git reflog"
खुश लहजे तय करने के लिए? (मैं पूछता हूं क्योंकि जैसा कि मुझे पता है कि गिट-एसवीएन बाइट सरणी जैसी फाइलों के साथ काम करता है)। आप गिट-एसवीएन का किस संस्करण का उपयोग करते हैं? –
हाँ, यह उन फ़ाइलों की सामग्री है जो ऑपरेशन के दौरान बदल दिए गए थे, पथ नहीं। जैसे ही कोई नया संस्करण आता है, मैं अपडेट कर रहा हूं, लेकिन मैं अभी काम पर नहीं हूं। जैसे ही मैं –
कर सकता हूं, मैं आपको गिट और गीट एक्सटेंशन की सटीक संस्करण संख्या बताऊंगा जब गिट-एसवीएन डॉकिट्स रिपोजिटरी में बदलता है तो निम्न कार्य करता है: –