2012-06-27 16 views
26

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

जब मैं एक प्रतिबद्ध है, मैं त्रुटि मिलती है:

Commit failed 
Base checksum mismatch on.... 

मैं फिर से निर्देशिका देखने के लिए सुनिश्चित करें कि यह साफ था और फिर से प्रतिबद्ध प्रदर्शन करने की कोशिश की, लेकिन मैं अब भी वही त्रुटि प्राप्त करते हैं।

क्या यह एक pegged फ़ाइल करने के लिए संबंधित हो सकता है? मैंने सोचा कि एक ऐसी फाइल पर काम करना जो संभव है और अनिवार्य रूप से इस कोड से शाखाएं होनी चाहिए?

+0

Wh क्या आप क्लाइंट पर उपयोग करते हैं? –

+0

मैं टोर्टोइज एसवीएन –

उत्तर

0

आपकी कामकाजी प्रतिलिपि दूषित हो सकती है। आप SmartSVN के साथ इसे सुधारने का प्रयास कर सकते हैं (संशोधित करें का चयन करें | व्यवस्थापक क्षेत्र मान्य करें)। अगर इससे मदद नहीं मिलेगी तो केवल एक नया चेकआउट मदद करेगा।

9

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

बस दो परियोजनाओं पर यह वही मुद्दा था और यह विधि काम करती थी।

+0

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

+0

रिवर्ट मेरे लिए काम नहीं करता था, लेकिन पूरी निर्देशिका को हटा रहा था, फिर अपडेट कर रहा था, फिर संशोधित फ़ाइलों को वापस ले जा रहा था (लेकिन निश्चित रूप से .svn निर्देशिका नहीं) ने भी मेरे लिए चाल बनाई थी। –

5

तरीका है कि मेरे लिए सबसे अच्छा काम किया, था:

  1. पूरे फ़ोल्डर (उदाहरण के लिए कछुआ का उपयोग) है कि प्रतिबद्ध नहीं होगा
  2. SVN में वर्तमान फ़ोल्डर हटाएँ के निर्यात (भी उपयोग कर कर अपने SVN ग्राहक)
  3. , फ़ोल्डर आप के लिए सब कुछ निर्यात रखो पहले हटाए गए फ़ोल्डर के रूप में एक ही स्थान पर, खासकर ही नाम के साथ
  4. जोड़ें और फ़ोल्डर
  5. तुम कहाँ थे आप वापस आ रहे हैं कमिट अपने परिवर्तन खोने और गलत चेकसम के बिना!
0

मुझे यह समस्या थी, लेकिन फ़ोल्डर को हटाने से कुछ भी प्रतीत नहीं होता था।

मैंने उसी स्रोत फ़ाइलों को किसी अन्य स्थान पर चेकआउट करके और इन समस्याओं को उन फ़ाइलों पर कॉपी करके इसे ठीक करने में कामयाब रहे।

स्वच्छ/वापसी/अद्यतन (फ़ाइलों को हटाने के बाद) कुछ भी नहीं किया।

मैं टोर्टोइसेव 1.7.11 64 बिट संस्करण के साथ विंडोज 7 चला रहा हूं।

39

तरह से मेरे लिए काम किया: समस्याग्रस्त फ़ाइल के

  1. मेक प्रति।
  2. वापस लाएं।
  3. विचलन और आइटम को अनदेखा करने के लिए जोड़ें।
  4. प्रतिबद्ध।
  5. Owerwrite प्रतिलिपि से प्रतिलिपि फ़ाइल।
  6. फ़ाइल को वापस एसवीएन में जोड़ें।
  7. प्रतिबद्ध।
+1

एसवीएन भंडार तक पहुंच के बिना, यह मेरे लिए सबसे साफ समाधान था। धन्यवाद! – sws

+1

विचलन-आईएनजी यह मेरे लिए हल किया गया था। ग्रहण में मैंने फ़ाइल की एक प्रति एक अलग नाम से बनाई, दूषित फ़ाइल को हटा दिया, एसवीएन ने नई फाइल को जोड़ा, और फिर नई फ़ाइल को मूल फ़ाइल नाम पर वापस कर दिया। धन्यवाद – gnB

+2

मैंने इस समाधान की कोशिश की और यह काम करता है, यह उस फ़ाइल के svn-history को भी हटा देता है, इसलिए आपको सावधानीपूर्वक मूल्यांकन करना चाहिए कि क्या आप ऐसा कुछ कर सकते हैं जिसके साथ आप रह सकते हैं। – Thomas

0

क्या मेरे लिए काम किया: फ़ाइल के वर्तमान संस्करण के

  1. मेक प्रति।
  2. SVN rm 'फ़ाइल नाम'
  3. SVN ci
  4. परिवर्तन फ़ाइल नाम वापस मूल
  5. SVN जोड़ें 'फ़ाइल नाम'
  6. SVN ci को

इस के बाद, प्रतिबद्ध और अद्यतन ठीक से काम करने लगते हैं।

0

अपने सर्वर के एसवीएन संस्करण की जांच करें, यह आपके स्थानीय svn संस्करण के साथ मेल नहीं खा सकता है।

1. आदेश का पालन करके एसवीएन संस्करण की जांच करें और इसे अपग्रेड करें, अगर यह आपके सर्वर संस्करण के साथ मेल नहीं खाता है।

svn --version 

2. एसवीएन के नवीनतम संस्करण (यानी आपका सर्वर svn संस्करण) के साथ प्रोजेक्ट चेकआउट करें।

3. फ़ाइल को प्रतिबद्ध करें।

नोट: यह केवल एसवीएन संस्करण विसंगति के मामले के लिए काम करेगा।

-1

बस एक ही मुद्दा था और मैं सांत्वना ग्राहक इस्तेमाल किया इसके साथ सौदा करने के लिए: SVN rm फ़ाइल नाम से

  1. बैकअप फ़ाइलों
  2. रेपो से फ़ाइलें हटाएं
  3. यह कमिट
  4. कॉपी से वापस फ़ाइलें बैकअप उपयोग SVN ऐड फ़ाइल नाम
  5. कमिट यह
2

क्या मेरे लिए काम किया है:

svn up --set-depth=empty 

तो

svn up --set-depth=infinity 

त्रुटि चला गया है!

+0

पूरा होने के लिए, समस्या फ़ाइल मानें foo.cpp है। रन: 'सीपी फ़ाइल नाम filename.save' ' svn up --set-depth = खाली फ़ाइल नाम ' 'svn up --set-depth = अनंत फ़ाइल नाम' ' meld फ़ाइल नाम filename.save' – Mac

0

बस एक ही मुद्दा था और मैं सांत्वना ग्राहक इस्तेमाल किया इसके साथ सौदा करने के लिए: svn rm filename

  • द्वारा

    1. बैकअप फ़ाइलों
    2. रेपो से फ़ाइलें हटाएं यह कमिट
    3. कॉपी बैकअप उपयोग से वापस फ़ाइलें svn add filename
    4. कमिट यह
  • संबंधित मुद्दे