2010-08-26 6 views
7

मेरे सवाल पर पृष्ठभूमि के लिए: SVN एक फ़ाइल यह सोचता है कि diff नहीं होंगे द्विआधारी हैबाइनरी मैपिंग के लिए svn के माइम को लगातार ओवरराइड करना?

$ svn diff data/assets/site/ir_gallery/images.kml 
Index: data/assets/site/ir_gallery/images.kml 
=================================================================== 
Cannot display: file marked as a binary type. 
svn:mime-type = application/vnd.google-earth.kml+xml 

हाल ही में एक ढेर अतिप्रवाह जवाब (svn diff: file marked as binary type) से पता चला आप एक माइम प्रकार के लिए मजबूर कर सकते हैं:

$ svn propset svn:mime-type 'text/plain' data/assets/site/ir_gallery/images.kml 
property 'svn:mime-type' set on 'data/assets/site/ir_gallery/images.kml' 

नोट कि पहले इस सवाल का जवाब अधूरा है ... आप भी करने के लिए:

$ svn commit 

अब मेरा नया प्रश्न है: क्या मैं डिफ़ॉल्ट सेट कर सकता हूं, इसलिए भविष्य में "vnd.google-earth.kml + xml" फ़ाइलों को svn द्वारा टेक्स्ट के रूप में माना जाता है? Redbook इस विषय पर चुप प्रकट होता है: http://svnbook.red-bean.com/en/1.2/svn.advanced.props.html केवल कह रही:

...if a file's svn:mime-type property is set to a non-text MIME type 
(generally, something that doesn't begin with text/, though there are 
exceptions) then... 

क्या अपवाद? क्या ये अपवाद एसवीएन कोड में बेक्ड हैं, या सुलभ हैं?

उत्तर

5

उत्तर आपके द्वारा उपयोग किए जा रहे svn क्लाइंट पर निर्भर करता है। आधिकारिक svn क्लाइंट में, जिस विकल्प को आप ढूंढ रहे हैं वह Automatic Property Setting है। Tl; dr संस्करण आपको user or system config को अपडेट करने की आवश्यकता है, enable-auto-propsyes पर yes पर yes पर सेट करें, और auto-props नामक एक नया अनुभाग बनाएं जो उन पैटर्न को परिभाषित करता है जिन्हें आप मिलान करना चाहते हैं और जिन गुणों को आप सेट करना चाहते हैं।

kml फ़ाइलें के अपने उदाहरण के लिए:

### Section for configuring miscelleneous Subversion options. 
[miscellany] 
enable-auto-props = yes 

[auto-props] 
*.kml = svn:mime-type=text/plain;svn:eol-style=native 

इससे यह सुनिश्चित होगा कि जब आप अपने संग्रह का .kml फ़ाइल जोड़ते हैं, इसके बारे में पाठ/सादे एक माइम-प्रकार होगा और लाइन अंत देशी का उपयोग करेगा ग्राहक के मंच पर।

+1

वह '* .xml = svn: mime-type = text/xml' पसंद कर सकता है क्योंकि kml एक xml आईआईआरसी – akostadinov

+1

है, वैसे, svn: mime-type = text/...; भाग महत्वपूर्ण है, क्योंकि यदि यह वहां नहीं है, तो प्रारंभिक-संपत्ति-सेट है जो इसे गैर-पाठ, एप्लिकेशन/एक्सएमएल पर सेट करता है, जो svn: eol-style = देशी को त्रुटि-आउट करने का कारण बनता है, पूरे को रोकता है फ़ाइल-जोड़ने चरण। माइम-टाइप = टेक्स्ट/... फ़ाइल की बाइनरी प्रकृति को पहले ओवरराइड करता है जैसे कि ईओएल-स्टाइल-नेटिव सेट किया जा सकता है। – macetw

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