2008-08-18 10 views
24

मैं पिछले कुछ महीनों से सर्वर के साथ इंटरफ़ेस करने के लिए TortoiseSVN के साथ कोड नियंत्रण के लिए सबवर्जन का उपयोग कर रहा हूं, और सामान्य रूप से यह बढ़िया हो रहा है! हालांकि, कभी-कभी मेरी फॉक्सप्रो आईडीई चेतावनी जहां "program.prg" हो जाता है "कार्यक्रम। पीआरजी") TortoiseSVN जाहिरा तौर पर इस लेता है पहली फ़ाइल मतलब करने के लिए हटा दिया गया था के बिना एक फ़ाइल एक्सटेंशन के मामले में बदल जाएगा, के रूप में चिह्नित बनने "गायब" और दूसरा नाम "गैर-संस्करण" के रूप में आता है, जो फ़ाइल में परिवर्तनों को ट्रैक करने की मेरी क्षमता पर विनाशकारी है। मैं समझता हूं कि सबवर्सन की उत्पत्ति * निक्स की केस-संवेदी दुनिया में है, लेकिन क्या इस व्यवहार को या तो सबवर्सन या टोर्टोइज एसवीएन में विंडोज़ के साथ इस्तेमाल होने पर फ़ाइल नाम केस-असंवेदनशील होने का कोई तरीका है?क्या मैं विंडोज के लिए सबवर्सन + टोर्टोइज एसवीएन केस-असंवेदनशील बना सकता हूं?

+0

आप उन सभी फ़ाइलों का नाम क्यों बदल सकते हैं। पीआरजी फिर एक बार और सभी के लिए? या फॉक्सप्रो यादृच्छिक रूप से इसे लोअरकेस में भी बदल देगा? –

उत्तर

20

दुर्भाग्य से, सबवर्सन केस-संवेदी है। यह इस तथ्य के कारण है कि सबवर्सन से फ़ाइलें दोनों केस-संवेदी फाइल सिस्टम (उदा।, * निक्स) और केस-असंवेदनशील फ़ाइल सिस्टम (जैसे, विंडोज़, मैक) पर जांच की जा सकती हैं।

This pre-commit hook script फ़ाइलों में चेक करते समय आपको समस्याओं से बचने में मदद कर सकता है। यदि यह आपकी समस्या का समाधान नहीं करता है, तो मेरा सबसे अच्छा सुझाव यह सुनिश्चित करने के लिए एक छोटी लिपि लिखना है कि सभी एक्सटेंशन लोअरकेस हैं और चेक-इन करने से पहले हर बार इसे चलाएं। यह एक पिटा होगा, लेकिन शायद आपकी सबसे अच्छी शर्त है।

+1

TortoiseSVN में केस-एडजस्टमेंट सुविधा है। यदि टीएसवीएन का पता लगाता है कि कामकाजी प्रति में एक फ़ाइल नाम का नाम बदल दिया गया है, तो यह फ़ाइल पर केस को पुनर्स्थापित करेगा। (कमांड लाइन एसवीएन उपकरण ऐसा नहीं करते हैं।) –

+0

उस स्क्रिप्ट को फ़ाइल नहीं मिली, लेकिन सही लेखक को स्टीफन द्वारा संदर्भित किया गया है; http://stackoverflow.com/questions/5393395/why-svn-import-option-fails-to-detect-file-duplicatio – AnneTheAgile

2

मैं वीएफपी के साथ टोर्टोइज एसवीएन का उपयोग करता हूं, और यह ज्यादातर मामूली रूप से केस फ़्लिपिंग को संभालता है। एकमात्र समय यह नहीं है कि जब मैं प्रतिबद्धता करने का प्रयास करता हूं तो आईडीई में फ़ाइल खोलती है: फ़ाइल लॉक वीएफपी इसे भ्रमित करता है। क्या यह आपकी समस्या में आता है, या क्या अन्य मुद्दे हैं?

मैंने पिछले वर्ष फॉक्सफोर्ड में सबवर्सन के साथ वीएफपी का उपयोग करने के बारे में एक प्रस्तुति दी: अधिकांश प्रस्तुति कमांड लाइन के साथ निपटाई गई, लेकिन अंत में कुछ स्लाइड हैं जिनमें टूल्स के लिंक हैं जो आपको सबवर्जन के साथ काम करने में मदद करते हैं VFP। http://docs.google.com/Presentation?id=dfxkh6x4_3ghnqc4

+0

अंतर्दृष्टि के लिए धन्यवाद! वीएफपी की बाइनरी-इलाज टेबल, फॉर्म इत्यादि एसवीएन में काम करने के लिए एक चुनौती है। –

+0

वीएफपी = विजुअल फॉक्सप्रो – AnneTheAgile

1

किट, आप ऊपर टिप्पणी करते हैं कि वीएफपी की द्विआधारी-आधारित स्रोत फ़ाइलों को सबवर्जन में काम करना मुश्किल है। मैंने जो लिंक दिया है, उसे आसान बनाने के लिए कुछ टूल्स का उल्लेख किया गया है, लेकिन जिस व्यक्ति के साथ मैं काम करता हूं वह क्रिस्टोफ वोलेनहाउप्ट की दो फॉक्स यूटिलिटी है - यह एक वीएफपी प्रोजेक्ट को केवल पाठ में परिवर्तित करता है। आपको इसे मैन्युअल रूप से चलाने की ज़रूरत है, लेकिन मुझे इसके साथ कोई समस्या नहीं है।

http://www.foxpert.com/docs/cvs.en.htm

+0

धन्यवाद गैरेट, हालांकि, आपके द्वारा लिंक किए गए पृष्ठ पर टूफ़ॉक्स के लिए डाउनलोड लिंक टूटा हुआ है। रूपांतरण उपकरण बहुत आसान होगा क्योंकि मैं आज सुबह फॉक्सप्रो-सबवर्जन मुद्दों से निपट रहा था! कोई अन्य स्थान मैं दोफॉक्स के लिए डाउनलोड प्राप्त करने में सक्षम हो सकता हूं या क्या वहां कोई बेहतर विकल्प है? –

+0

क्षमा करें मैंने पहले यह नहीं देखा - रिकॉर्ड के लिए, मैंने अभी क्रिस्टोफ की साइट की जांच की है, और डाउनलोड अभी भी अच्छा है। मुझे लगता है कि यह सिर्फ एक अस्थायी गड़बड़ था .... – SarekOfVulcan

2

मेरा मानना ​​है कि एक्सटेंशन पर यादृच्छिक अपर और लोअर केस में सभी यादृच्छिक नहीं है। मुझे इस पर परीक्षण याद है। यदि आप प्रोजेक्ट मैनेजर से प्रोग्राम संशोधित करते हैं। संशोधित बटन पर क्लिक करके मान लें। और फिर एक्सटेंशन को कम केस में परिवर्तनों को सहेजें। यदि आप कमांड विंडो से एक संशोधित कमांड करते हैं और एक्सटेंशन को ऊपरी केस में परिवर्तनों को सहेजते हैं। स्पष्ट रूप से माइक्रोसॉफ्ट के कोडर्स ने विस्तार के मामले के बारे में चिंता नहीं की थी।

+0

यह इस सवाल को पोस्ट करने के बाद से मैंने देखा पैटर्न को पुष्टि करता है, धन्यवाद। –

4

विंडोज केस संवेदनशीलता का समर्थन करता है, लेकिन आपको इसे Windows API से CreateFile पर सही POSIX फ़्लैग भेजना होगा! एक रजिस्ट्री कुंजी को बदलने की आवश्यकता हो सकती है (यूनिक्स और अल्टीमेट विंडोज 7 के लिए एसएफयू/टूल्स में यह रजिस्ट्री प्रविष्टि पहले से सेट है, इसलिए विंडोज केस संवेदनशील फ़ाइल नामों का समर्थन करता है)।

विंडोज यूनिक्स से डिज़ाइन किया गया है, लेकिन एक्सप्लोरर.एक्सई और अन्य प्रोग्राम जैसी चीजें पिछली संगतता और सुरक्षा के लिए केस संवेदनशीलता को अस्वीकार करने के लिए डिज़ाइन की गई हैं (ज्यादातर जब डीओएस को नोटपैड.एक्सई बनाम नोटपैड.एक्सईई निष्पादित करने के साथ काम करते हैं, जहां सभी कैप्स एक वायरस या मैलवेयर है)।

लेकिन Vista + में सुरक्षा विशेषताएँ हैं जो इसे अप्रचलित बनाती हैं।

TortiousSVN फ़ाइलों को बनाने और नाम बदलने के दौरान इस पॉज़िक्स ध्वज को पारित करने का समर्थन नहीं करता है।

0

नहीं, आप निश्चित रूप से नहीं कर सकते हैं। एसवीएन केस-संवेदी है जब तक कि आप किसी भी तरह कोड को फिर से लिखना नहीं चाहते थे ... ओपन-सोर्स है।

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