क्षतिग्रस्त रिपॉजिटरी (जिसमें एक केंद्रीकृत .svn निर्देशिका है) की मरम्मत कैसे करें?


19

मैंने हाल ही में अपने TortoiseSVN स्थापना को 1.7.1 संस्करण में अपग्रेड किया है। इसने मुझे अपनी वर्किंग कॉपी को भी अपग्रेड करने के लिए मजबूर कर दिया। नवीनीकरण ने सभी उपनिर्देशिकाओं से .svn निर्देशिकाओं के सभी (लेकिन एक) को रूट में केवल एक को हटा दिया।

अब नीले रंग से बाहर (निश्चित रूप से; मुझे अपने एंटीवायरस सॉफ़्टवेयर पर संदेह है) एक त्रुटि है जब मैं उदाहरण के लिए काम की कॉपी को साफ करने की कोशिश करता हूं। मैं भी कुछ नहीं कर पा रहा हूं।

सफाई करते समय त्रुटि संदेश है:

क्लीनअप निम्नलिखित पथ को संसाधित करने में विफल रहा: C: \ svn

फ़ाइल 'C: \ svn.svn \ pristine' नहीं खोल सकते हैं।

मैंने काम की प्रति के भीतर एक निर्देशिका की उपस्थिति से संबंधित त्रुटि का पता लगाया। अगर मैं इसका नाम बदलूं तो सब कुछ काम करता है। जब यह मौजूद होता है तो मुझे त्रुटि मिलती है। मैंने इसे भी हटा दिया और इसे फिर से जांचा। कोई परिवर्तन नहीं, त्रुटि बनी रहती है।

पिछले संस्करणों के साथ मैं आसानी से .svn में नुकसान की मरम्मत कर सकता था: बस अपमानजनक फ़ोल्डर को हटा दें और फिर से देखें। मैं अब ऐसा नहीं कर सकता क्योंकि अब .svir dir केंद्रीकृत है।

मैं अपनी कार्यशील प्रतिलिपि को सुधारने के लिए क्या कर सकता था?

जवाबों:


21

फ़ाइल नहीं खोल सकते 'C: \ svn.svn \ pristine \ 73 \ 73bcc5fa7819f84f56b81dfa0236f0aac7b7d404.svn-base

मुझे बस एक समान त्रुटि हुई थी और मुझे वास्तव में नोटपैड के साथ उस फाइल को बनाना था और फिर सफाई काम किया।


1
लेकिन क्या ऐसा करना सुरक्षित है? क्या "svn क्लीनअप" उस फाइल को फिर से गैर-रिक्त बना देगा? (क्योंकि यह निश्चित रूप से पहले था, नहीं?)
hans_meine

मैं यह सत्यापित कर सकता हूं कि यह विधि काम करती है, मुझे यकीन नहीं है कि इस तरह की खाली फाइल बनाने से क्या परिणाम / नुकसान होता है - लेकिन इसे नहीं बनाने, मुझे "कमिट के साथ आगे बढ़ने" की अनुमति नहीं दी गई
nrathaus

4

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

इसे और स्पष्ट करने के लिए, मेरे मामले में, फ़ाइल svn के बारे में शिकायत की गई थी .svn/pristine/d1/d12a84ef7be5dad86b76e1a45fc3da4698d38796.svn-base, जो कि ताजा, आंशिक चेकआउट में पाया जाने वाला मार्ग है।


3

पुराने संस्करण से कछुआ एसवीएन 1.7.7 में अपग्रेड करने के बाद हमें यही समस्या थी।

चूंकि मुझे कोई अन्य समाधान नहीं मिला, इसलिए मैंने स्थानीय कामकाजी प्रतिलिपि को हटा दिया और इसे फिर से जांचा। यह अब ठीक काम कर रहा है।


2

मुझे एक मर्ज निरस्त करते समय मुद्दा मिल गया। मैं कोई SVN कार्रवाई नहीं कर सका। SVN क्लीनअप करने पर यह एक त्रुटि देता है कि यह एक निर्दिष्ट फ़ाइल नहीं ढूँढ सकता है जो क्लीनअप विफलता की ओर ले जाती है।

मैंने निर्दिष्ट फ़ोल्डर में उस सटीक नाम के साथ एक डमी फ़ाइल बनाई और एक SVN को साफ किया।

तब मैं आगे बढ़ने में सक्षम था।


0

मुझे एक समान समस्या थी, जहां यह कह रहा था कि एक फ़ाइल C:\working_copy\dir\file.xmlनहीं मिल सकती है। मैंने dirनिर्देशिका को हटा दिया था । मेरे मामले में, बस एक नया dirफ़ोल्डर और file.xmlफ़ाइल (खाली पाठ के साथ) जोड़ने से सफाई जारी रखने की अनुमति मिलती है, फिर मैं काम की प्रतिलिपि को ठीक से अपडेट कर सकता हूं।


0

मेरा मुद्दा यह था कि मुझे अपनी IDE में सभी प्रोजेक्ट को फिर से कॉन्फ़िगर करने की आवश्यकता होगी यदि मैं स्क्रैच रिपॉजिटरी से जांच करता हूं, तो मैंने बचत परिवर्तनों की परवाह नहीं की।

मैंने उसी निर्देशिका में .svn निर्देशिका और चेकआउट रिपॉजिटरी को हटा दिया है।

समस्या हल हो गई थी: मैं सभी svn संचालन करने में सक्षम था और परियोजना अभी भी IDE में कॉन्फ़िगर की गई थी

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.