2008-10-21 7 views
5

में विलय के बाद परिवर्तन नहीं कर सकता हूं मुझे TortoiseSVN का उपयोग करके मेरी परियोजना की दो शाखाओं को विलय करने के बाद परिवर्तन करने में समस्या थी।मैं एसवीएन

मैं परियोजना के ट्रंक को मर्ज शाखा है जो मैं पर काम कर रहा हूँ था:

यहाँ विवरण हैं।

परियोजना मुख्य भंडार और SVN बाहरी (पुस्तकालयों भी branched कर रहे हैं) के रूप में मुख्य भंडार करने के लिए संयुक्त पुस्तकालयों परियोजना की उप-निर्देशिका के रूप में भी शामिल है।

जब मैं परिवर्तन प्रतिबद्ध करने के लिए कोशिश कर रहा था TortoiseSVN ने कहा:

Commit A 
re all the targets part of the same working copy? 
Unable to lock 'D:\websites\project\lib' 
Please execute the "Cleanup" command. 
पाठ्यक्रम सफाई के

मदद नहीं की।

SVN: परियोजना निर्देशिका के लिए बाहरी कीवर्ड अच्छी तरह से परिभाषित किया गया था, भी lib फ़ोल्डर अभी भी पुस्तकालयों की उचित संस्करण (ट्रंक संस्करण) शामिल था।

दोनों एसवीएन सर्वर और क्लाइंट 1.5.x संस्करण में हैं (TortoiseSVN 1.5.3.x है)।

दृश्य दोनों परियोजना के तकनीकी बिंदु से और पुस्तकालयों एक ही SVN भंडार में परियोजनाओं कर रहे हैं।

कोई विचार क्या गलत हुआ?

मैं समाधान के लिए एक सा googling रहा था, लेकिन कुछ भी उपयोगी नहीं मिला, तो मैं दो चरणों में अपने परिवर्तनों को प्रतिबद्ध करने के लिए करने की कोशिश की:

  1. से
  2. प्रतिबद्ध परिवर्तन परियोजना फ़ोल्डर से परिवर्तन हो पुस्तकालय फ़ोल्डर

जो बिना किसी समस्या के चला गया।

लेकिन मैं अभी भी सोच रहा हूं कि मैं सब कुछ एक प्रतिबद्धता में क्यों नहीं कर सका।

संपादन:

  • (के बाद केन जी जवाब) TortoiseSVN 1.3.x के फिक्स्ड संस्करण -> 1.5.3.x.
+0

यह कुछ और अधिक जटिल :( आज मैं इस त्रुटि जब मैं भंडार को अद्यतन करने रहा था मिल गया है - SVN जो भंडार में था के बाद सफाई SVN कहा फ़ोल्डर लॉक नहीं कर सके। निर्देशिका 'डी जोड़ने में विफल: \ website \ project \ import ': एक ही नाम की एक संस्करण वाली निर्देशिका पहले से मौजूद है मैं इसकी जांच करूंगा। –

उत्तर

1

SVN: बाहरी सबवर्सन चेक-आउट करने पर अलग अलग भंडार पथ गठबंधन करने के लिए कारण होगा, लेकिन अंत में उन रास्तों अभी भी, 'संबंध तोड़ना' कर रहे हैं ताकि आप लागू किए गए परिवर्तनों को पाने के लिए दो करता क्या करना है।

यहाँ से Version Control with Subversion

प्रासंगिक उद्धरण और सबवर्सन अभी भी सही मायने में केवल nondisjoint काम कर प्रतियों पर चल रही है। तो, उदाहरण के लिए, यदि आप परिवर्तन है कि आप उन बाहरी काम कर प्रतियों में से एक या अधिक में बनाया है प्रतिबद्ध करने के लिए चाहते हैं, आप SVN चलाना चाहिए प्राथमिक काम कर प्रति पर उन काम कर प्रतियां-करने से पर स्पष्ट रूप से प्रतिबद्ध होगा किसी भी बाहरी में रिकर्स नहीं करें।

+0

केन - यह वही भंडार है - मैं सप्ताह में एक बार विलय करता हूं और यह हमेशा काम करता है - मैं प्रतिबद्ध कर सकता हूं सब कुछ एक प्रतिबद्धता में। TortoiseSVN मुझे प्रोजेक्ट फ़ोल्डर nd lib फ़ोल्डर दोनों से कमिट विंडो फ़ाइलों में दिखाता है - यहां तक ​​कि lib फ़ोल्डर भी (संपत्ति svn: विलय बदल दिया गया था) –

+0

जेएफटीआर, "विभिन्न रिपोज़ थ्योरी पथ "एक ही भंडार में रहते हैं - वे सिर्फ अलग हैं _paths_, है ना? तो TortoiseSVN के 1.5.3 में अपग्रेड करने के बाद आप एक ही व्यवहार देखते हैं? वही त्रुटि संदेश? –

+0

हां। अभी भी वही व्यवहार। Http://svn.haxx.se/users/archive-2008-01/0814.shtml के अनुसार यह एक बग नहीं है, लेकिन सुविधा है :)। तो आप सही हैं। शायद TortoiseSVN के इयरलर संस्करण ने इस व्यवहार को मुखौटा किया। –

1

मुझे लगता है कि मुझे टोर्टोइज एसवीएन में इससे संबंधित एक बग के बारे में पढ़ना याद है जिसे नवीनतम रिलीज में तय किया गया है। नवीनतम release notes देखें।

2

टोर्टोइज एसवीएन का 1.3 बहुत पुराना है, नवीनतम संशोधन 1.5.x है। 1.3 के बाद से सबवर्जन और टोर्टोइज एसवीएन में कई बदलाव हुए हैं, इसलिए आपके क्लाइंट को अपग्रेड करना शायद आपकी सबसे अच्छी शर्त है।

यह कहकर, 1.5 TortoiseSVN वर्किंग कॉपी को संस्करण 1.5 प्रारूप में बनाने/अपडेट करने जा रहा है।पिछले सबवर्जन की कार्यशील प्रतिलिपि के खिलाफ TortoiseSVN (या कोई भी SVN क्लाइंट) का उपयोग करते समय बहुत सावधानी बरतें।