में किसी निर्देशिका का नाम बदलने का एक सौहार्द तरीका वीसीएस (नियमित svn, git और git-svn उपयोगकर्ता) में किसी भी तरह से छिपा हुआ है, लेकिन मैं इस असाधारण एसवीएन व्यवहार के आसपास अपने सिर को लपेट नहीं सकता।सबवर्सन वर्किंग कॉपी
जब भी मैं एक अन्यथा 'साफ़' राज्य से मेरी SVN काम कर कॉपी में एक निर्देशिका का नाम बदलने की जरूरत है - यानी svn status
रिटर्न कुछ भी नहीं है और सभी अन्य संशोधनों प्रतिबद्ध किया गया है - तो की तरह (जो क्या SVN डॉक पता चलता है):
svn mv foo bar
svn commit
SVN जोर से शिकायत:
Adding bar
Adding bar/toto
Deleting foo
svn: Commit failed (details follow):
svn: Item '/test/foo' is out of date
जैसा तुम चाहो:
svn update
कौन देता है:
C foo
At revision 46.
Summary of conflicts:
Tree conflicts: 1
एक पेड़ संघर्ष, नहीं है, जबकि तीसरे पक्ष परिवर्तन हुआ। काफी braindead
svn resolve --accept working -R .
svn commit
रेपो पर दूर से यह नाम बदल रहा है तो मेरे कार्य प्रतिलिपि को अद्यतन करने लगता है:: जाहिर है, इस पेड़ संघर्ष गंदगी से बाहर निकलने का एक ही तरीका है सामान्य रूप से (SVN लाल किताब से) है
url=$(svn info | grep -e '^URL:' | sed 's/^URL: //') svn mv $url/foo $url/bar
svn update
क्या एक फ़ोल्डर का नाम बदलने के लिए एक स्वीकृत, अधिक सुव्यवस्थित तरीका है जिसे मैं याद कर रहा हूं? उस विशेष रूप से आश्चर्यजनक वृक्ष संघर्ष राज्य के पीछे मूल कारण क्या है? मेरे लिए
क्या आप सही वृक्ष संघर्ष संदेश पोस्ट कर सकते हैं? –
मैंने इस व्यवहार को पहले भी देखा है, लेकिन मुझे यकीन नहीं है कि इसका कारण क्या है। क्या यह तब होता है जब आप एक डीआईआर जोड़ते हैं और संभवतः इसे पहले नामित करते हैं? –
मैं भी इस व्यवहार का अनुभव करता हूं और एक कारण जानने में सक्षम नहीं हूं। मैंने हमेशा इसे "एसवीएन काम करने के तरीके" के लिए तैयार किया है। ये मुझे पागल कर रहा है। –