एसवीएन अपग्रेड वर्किंग कॉपी


133

मैं एक SVN कमिट नहीं कर सकता। मुझे यह त्रुटि मिली:

org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded
svn: Working copy 'C:\.... is too old (format 10, created by Subversion 1.6)

इसका समाधान कैसे किया जा सकता है?

जवाबों:


154

आपको अपने तोड़फोड़ क्लाइंट को कम से कम 1.7 में अपग्रेड करना होगा।

कमांड लाइन क्लाइंट के साथ, आपको कमांड जारी करके मैन्युअल रूप से अपने वर्किंग कॉपी फॉर्मेट को अपग्रेड करना होगा svn upgrade:

वर्किंग कॉपी को अपग्रेड करना

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

TortoiseSVN अगले लेखन ऑपरेशन के साथ काम की प्रतिलिपि अपग्रेड करेगा:

वर्किंग कॉपी को अपग्रेड करना

तोड़फोड़ 1.7 काम की नकल प्रारूप में पर्याप्त परिवर्तन का परिचय देता है। पिछली रिलीज़ में, जब एक लिखित ऑपरेशन किया गया था, तो सबवर्सन स्वचालित रूप से कार्य प्रारूप को नए प्रारूप में अपडेट कर देगा। हालांकि, तोड़फोड़ 1.7, यह एक मैनुअल कदम बना देगा।

इससे पहले कि आप TortoiseSVN 1.7 के साथ मौजूदा कार्य प्रतिलिपि का उपयोग कर सकें, आपको पहले प्रारूप को अपग्रेड करना होगा। यदि आप किसी पुरानी वर्किंग कॉपी पर राइट-क्लिक करते हैं, तो TortoiseSVN आपको केवल संदर्भ मेनू में एक कमांड दिखाता है: वर्किंग कॉपी को अपग्रेड करें।
- TortoiseSVN 1.7 रिलीज नोट


2
जब मैं आदेश जारी करता हूं तो svn upgradeउबंटू मुझे बताता है "कमांड नहीं मिली"
गेनोरमा

@geneorama: क्या आपने svnस्थापित किया है? ( sudo apt-get install svn)
knittl

5
उत्तर के लिए धन्यवाद! मेरे पास svn स्थापित (तोड़फोड़) था, लेकिन यह संस्करण 1.6 था, जिसमें upgradeकमांड नहीं है । Ubuntu 12.04 एक नया ppa जोड़े बिना 1.7 स्थापित नहीं करेगा। askubuntu.com/questions/65468/…
जीनोरमा

@genorama यहां Mac OS के लिए svn को अपग्रेड करने के निर्देश दिए गए हैं जो कि 1.6 redfinsolutions.com/blog/update-subversion-mac-os-x से शुरू होकर काम करेंगे । लिनक्स के लिए, मैं कल्पना करता हूं कि यह समान है।
माइक इंजी

1
"इस आदेश में कुछ समय लग सकता है, और कुछ उपयोगकर्ताओं के लिए, नई वर्किंग कॉपी को चेकआउट करना अधिक व्यावहारिक हो सकता है।" मैं कमांड चला रहा हूं, यह नहीं जानता कि क्या उम्मीद है, 2 सेकंड के बाद कंसोल अपग्रेड हो जाता है '।' : पी
रबिदमैने


6

MacOS पर:

  1. नवीनतम संकलित SVN क्लाइंट बायनेरी यहाँ से प्राप्त करें
  2. इंस्टॉल।
  3. पथ में बायनेरिज़ जोड़ें (अंतिम स्थापना स्क्रीन बताती है कि कैसे)।
  4. टर्मिनल खोलें और अपनी परियोजना निर्देशिका पर निम्न कमांड चलाएँ:

    svn उन्नयन


3

यदि आपने अपनी मशीन पर सिर्फ SVN 1.7 में अपग्रेड किया है (जैसे मैंने अभी किया था), और आपके ग्रहण कार्यक्षेत्र में बहुत सारी परियोजनाएँ हैं जिन्हें अपग्रेड करने की आवश्यकता है, तो आप यूनिक्स-बेस्ड सिस्टम पर एक टर्मिनल विंडो में निम्न कार्य कर सकते हैं:

cd [eclipse/workspace] # <- you supply the actual path here

for file in `find . -depth 2 -name "*.svn"`; do svn upgrade `dirname $file` ; done;

Googling के बाद, मैंने पाया कि विंडोज उपयोगकर्ताओं के लिए क्या समान है:

http://www.rqna.net/qna/mnrmqn-how-to-find-all-svn-working-copies-on-win-xp.html

पेज का आधा हिस्सा एलेक्सी शचरबक द्वारा उत्तर देखें।


2

इस समस्या के कारण आप उस प्रोजेक्ट को संकलित करने का प्रयास करते हैं जिसमें आपके द्वारा वर्तमान में उपयोग की गई ओल्डर एसवीएन की फाइलें हैं।

इस समस्या को हल करने के लिए आपके पास दो उपाय हैं

  1. परियोजना SVN फ़ाइलों के साथ संगत होने के लिए संस्करण 1.6 SVN स्थापित करने के लिए
  2. प्रोजेक्ट को अपग्रेड करने की कोशिश करें .. (हमेशा काम नहीं)।

2

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

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


1

कछुआ-एसवीएन के नवीनतम संस्करण में अपग्रेड करने के बाद मुझे पहले "अपग्रेड" करने की जरूरत थी (जैसा कि "अपडेट" के विपरीत!)।


1

अगर आपको यह त्रुटि Netbeans (7.2+) से मिल रही है तो इसका मतलब है कि आपके अलग-अलग इंस्टॉल किए गए संस्करण में सबवर्सन नेटबीन्स के संस्करण की तुलना में अधिक है। मेरे मामले में Netbeans (v7.3.1) में SVN v1.7 था और मैंने अपने SVN को v1.8 में अपग्रेड किया था।

यदि आप देखते हैं Tools > Options > Miscellaneous (tab) > Versioning (tab) > Subversion (pane), तो प्रेफ़र्ड क्लाइंट = सीएलआई सेट करें , तो आप उस पथ को स्थापित कर सकते हैं जो स्थापित एसवीएन है जो मेरे लिए था C:\Program Files\TortoiseSVN\bin

अधिक नेटबींस सबवर्सन ग्राहकों के अकसर किये गए सवाल पर पाया जा सकता है ।


1

Visual Studio में AnkhSVN के साथ , समाधान एक्सप्लोरर (जब लागू हो) में समाधान के लिए संदर्भ मेनू के तहत "अपग्रेड वर्किंग कॉपी" विकल्प भी है।


0

आप सबवर्सन 1.7 में अपग्रेड कर सकते हैं। सबवर्सन 1.7 को अपडेट करने के लिए आपको Xcode 5 या इसके बाद के संस्करण में मौजूदा प्रोजेक्ट लॉन्च करना होगा। यह एक चेतावनी ' The working copy ProjectName should be upgraded to Subversion 1.7' (नीचे स्क्रीनशॉट में दिखाया गया है) संकेत देगा ।

चेतावनी के लिए स्क्रीनशॉट

आपको Upgradeसबवर्सन 1.7 में अपग्रेड करने के लिए ' ' बटन का चयन करना चाहिए । इसमें थोड़ा समय लगेगा।

यदि आप टर्मिनल का उपयोग कर रहे हैं तो आप अपने प्रोजेक्ट डायरेक्टरी में नीचे कमांड चलाकर सबवर्सन 1.7 में अपग्रेड कर सकते हैं: एसवीएन अपग्रेड

ध्यान दें कि एक बार आपके पास है upgraded to Subversion 1.7 you cannot go back to Subversion 1.6.

अधिक जानकारी के लिए Apple डॉक्स देखें।

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