svn शहर एसवीएन त्रुटि-एक कामकाजी प्रति नहीं




मुख्यमंत्री शहरी घरेलू कामकाजी महिला कल्याण योजना (16)

हाल ही में हमारे एसवीएन सर्वर बदल गए थे और हमने एक एसवीएन स्विच किया था।

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

लेकिन रिपॉजिटरी के शीर्ष स्तर पर, जब मैं फ़ाइलों को अपडेट करने का प्रयास करता हूं, तो मुझे svn मिलता है : वर्किंग कॉपी '।' लॉक त्रुटि और सफाई या तो मदद नहीं कर रहा है। जब मैं सफाई करता हूं, मुझे इन तरह की त्रुटियां मिलती हैं - svn: 'content' एक कार्यशील प्रति निर्देशिका नहीं है

ताज़ा चेकआउट बिल्कुल एक विकल्प नहीं है। क्या ताले को साफ करने और रिलीज करने और स्विच पूरी तरह से करने के अन्य तरीके हैं?

संपादित करें: जेस्पर के उत्तर में अंतिम पैराग्राफ

यदि आपको एक रिकर्सिव "svn cleanup" करते समय "काम नहीं कर रहा" मिलता है तो मेरा अनुमान यह है कि आपके पास एक निर्देशिका है जो एक कार्यशील प्रति होना चाहिए (यानी टोपीवेल पर .svn निर्देशिका ऐसा कहती है), लेकिन इसमें इसकी कमी है स्वयं। एसवीएन निर्देशिका। उस स्थिति में, आप उस निर्देशिका को हटाने / स्थानांतरित करने का प्रयास कर सकते हैं और फिर स्थानीय अपडेट कर सकते हैं

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

लेकिन, मैं अभी भी svn स्विच त्रुटि को नहीं समझ सकता जो अब कुछ पढ़ता है,

svn: 'svn: // repourl / reponame / foldername' पर भंडार uuid 'm / reponame' है, लेकिन डब्ल्यूसी में 'b5b39681-0ff6-784b-ad26-2846b9ea8e7d' है

कोई विचार ?


यदि आपने नई निर्देशिका के अंदर एक फ़ाइल बनाई है, तो 'svn add newdir / newfile' के बजाय 'svn add newdir' का उपयोग करें क्योंकि आपको निर्देशिका जोड़ने की आवश्यकता है। निर्देशिका के अंदर सभी फाइलें डिफ़ॉल्ट रूप से जोड़ दी जाएंगी।


वही, मुझे एक 'contrib' फ़ोल्डर को अपडेट करने की आवश्यकता है:

  1. पुराने फ़ोल्डर को हटा दिया,
  2. नया एक कॉपी किया
  3. प्रत्येक फ़ोल्डर में .svn फ़ोल्डर्स को कॉपी किया गया (केवल मेरे मामले में तीन) नया फ़ोल्डर।

मैं भी अपना मामला भी हटा दिया गया था। एसवीएन फ़ोल्डर्स।

हल किया।


आपने अपनी परियोजना से एक एसवीएन - बेस फ़ाइल हटा दी होगी (जो केवल-पढ़ने वाली फाइलें हैं)। इसके कारण आपको यह त्रुटि मिलती है।

एक ताजा प्रोजेक्ट फिर से देखें, अपने पुराने एसवीएन प्रोजेक्ट के परिवर्तनों (अगर कोई है) को "Winmerge" का उपयोग करके नए के साथ मर्ज करें और अपने नवीनतम चेक आउट में बदलाव करें।


@ जेस्पर mentions कि आपको यूयूआईडी बदलने की जरूरत है। निम्नलिखित आपको इसे प्राप्त करने में मदद करनी चाहिए।

एसवीएन 1.5+ पर, आप svnadmin setuuid कर सकते हैं; फिर आप जांच सकते हैं कि यह svnlook uuid का उपयोग करके सही ढंग से सेट किया गया है। एसवीएन के पुराने संस्करणों पर, यह एक कठिन प्रक्रिया है। http://chestofbooks.com/computers/revision-control/subversion-svn/Managing-Repository-UUIDs-Reposadmin-Maint-Uuids.html देखें

इसके अतिरिक्त "m / reponame" का यूयूआईडी संदिग्ध लगता है। मेरा मानना ​​है कि यह एक हेक्स-स्वरूपित संख्या होनी चाहिए जो काम करने वाली प्रति की तरह हो, इसलिए हो सकता है कि यह क्रिया पूरी तरह से चीजों को बेहतर करेगी :-)

[मैंने मूल रूप से mentions पर टिप्पणी mentions , लेकिन लोगों के लिए इसे और अधिक स्पष्ट बनाने और Google के लिए अधिक उपयोगी बनाने के लिए यह उत्तर बनाया। मैंने बाद में अपनी टिप्पणियां हटा दी हैं। ]


क्या यह एक कामकाजी प्रति प्रारूप विसंगति हो सकता है? यह svn 1.4 और 1.5 के बीच बदल गया है और नए उपकरण स्वचालित रूप से प्रारूप को रूपांतरित करते हैं, लेकिन फिर पुराने लोग परिवर्तित प्रतिलिपि के साथ काम नहीं करते हैं।


वर्कअराउंड: निर्देशिका का नाम बदलें जो 'वर्किंग कॉपी' नहीं है चेकआउट / अपडेट / इस निर्देशिका को पुनर्स्थापित करें फिर से नामित निर्देशिका से फ़ाइलों को नए कमिट में बदलें

कारण: आपने .svn निर्देशिका के तहत कुछ फ़ाइलों में कुछ बदलाव किए हैं, यह ब्रेक 'वर्किंग कॉपी'


svn: 'svn: // repourl / reponame / foldername' पर भंडार uuid 'm / reponame' है, लेकिन डब्ल्यूसी में 'b5b39681-0ff6-784b-ad26-2846b9ea8e7d' है

प्रत्येक सबवर्जन रेपो में एक अद्वितीय पहचानकर्ता (यूयूआईडी) होता है। सबवर्सन यह सुनिश्चित करने के लिए इसका उपयोग करता है कि स्विचिंग जैसी चीजें करते समय रिपो वास्तव में वही होता है। आपको शायद सर्वर पर यूयूआईडी को पहले जैसा ही बदलना चाहिए।


मैं एक समान स्थिति में आया ( svn: 'papers' is not a working copy directory ) एक अलग तरीका है, इसलिए मैंने सोचा कि मैं अपनी लड़ाई कहानी (सरलीकृत) पोस्ट करूंगा:

$ svn add papers
svn: Can't create directory 'papers/.svn': Permission denied

ऊप्स! अनुमतियों को ठीक करें ... फिर:

$ svn add papers
svn: warning: 'papers' is already under version control
$ svn st
~     papers
$ svn cleanup
svn: 'papers' is not a working copy directory

और यहां तक ​​कि रास्ते से बाहर निकलने वाले papers और svn up (जिसे ओपी के लिए काम किया) चलाना भी ठीक नहीं हुआ। यहां मैंने जो किया है:

$ mv papers papers_
$ svn cleanup
$ svn revert papers
Reverted 'papers'
$ mv papers_/ papers
$ svn add papers

वह काम किया।


अगर आपको एक रिकर्सिव svn cleanup करने पर "काम नहीं कर रहा" मिलता है तो मेरा अनुमान यह है कि आपके पास एक निर्देशिका है जो एक कार्यशील प्रति होना चाहिए (यानि शीर्ष स्तर पर .svn निर्देशिका ऐसा कहती है), लेकिन यह स्वयं ही गायब है .svn निर्देशिका। उस स्थिति में, आप उस निर्देशिका को निकालने / स्थानांतरित करने का प्रयास कर सकते हैं और फिर स्थानीय अपडेट (यानी rm -rf content; svn checkout content ) कर सकते हैं।

यदि आपको not a working copy त्रुटि not a working copy मिलती है, तो इसका मतलब है कि सबवर्सन में उचित .svn निर्देशिका नहीं मिल सकती है। यह देखने के लिए जांचें कि contents में .svn निर्देशिका है या नहीं

यदि संभव हो तो आदर्श समाधान एक ताजा चेकआउट है।


मैंने इसे हल किया

  1. प्रभावित फ़ोल्डर्स का बैकअप कॉपी करें
  2. एसवीएन प्रभावित फ़ोल्डरों को वापस लाता है
  3. बैकअप से फ़ाइलों को वापस पेस्ट करें

मेरे मामले में समस्या हटा दी गई थी। एसवीएन-फाइलें।


मैं svn diff ऑपरेशन में भी इस समस्या को पूरा करता हूं, यह गलत फ़ाइल पथ के कारण होता है, आपको वर्तमान फ़ाइल निर्देशिका को इंगित करने के लिए './' जोड़ना चाहिए।


मैक के लिए: - सर्वर की ओर से चेकआउट लें और अपनी स्थानीय मशीन से निर्देशिका का चयन करने के लिए एक नई विंडो खुल जाएगी, अपने सभी कोड को चयनित फ़ोल्डर में डालने के बजाय फिर svn स्थानीय पक्ष खोलें और प्रोजेक्ट जोड़ें और प्रतिबद्ध करें


अपनी स्थानीय मशीन में मौजूद .svn फ़ोल्डर हटाएं। विंडोज़ आइकन दबाएं और टाइप करें। एसवीएन, पूरे फ़ोल्डर को हटाएं। यह मेरे लिए काम किया।


वही समस्या थी, यह पता चला कि हमारे पास एक ही मशीन पर स्लिम 1.6.2 के साथ-साथ कछुआ था। कछुए को अद्यतन किया गया था (और कामकाजी प्रति अद्यतन किया गया था) लेकिन स्लिक नहीं था, इसलिए कछुआ ठीक काम किया, लेकिन कमांड लाइनों के साथ विफल रहा:

svn: '।' एक कामकाजी प्रति निर्देशिका नहीं है

कछुआ और स्लिक दोनों को हटाकर, फिर कमाना लाइन टूल्स के साथ कछुए को पुनः स्थापित करने के लिए यह मेरे लिए तय किया गया।


आज मुझे एक ही समस्या मिली है /FILE_NAME/ is not a working copy सुबह में /FILE_NAME/ is not a working copy और मैंने इसे हल करने के लिए दो घंटे बिताए हैं। लंबे समय तक आरएनडी और Google के बाद मुझे कुछ समाधान मिला और यह जांच है।

  1. नई परियोजना के रूप में स्थानीय से स्थानीय तक SUBVERSION करें।
  2. जावा फ़ाइल में कुछ कोड बदलें और परियोजना को COMMIT करें।
  3. यह मेरे लिए काम करता है।

उम्मीद है कि यह आपके लिए सहायक होगा।


मैंने उप फ़ोल्डर से रूट फ़ोल्डर में .svn फ़ोल्डर चिपकाने का प्रयास किया। यह काम करता हैं!!!





svn