मैं निम्नलिखित समस्या तोड़फोड़ का उपयोग कर:सबवर्जन नामित फ़ाइलों में परिवर्तन विलय नहीं कर रहा है?
मैं वर्तमान में अपने प्रोजेक्ट के ट्रंक पर काम कर रहा हूँ और कुछ पुनर्रचना करने के लिए (जो फ़ाइलों का नाम बदलने या अलग निर्देशिका के लिए फ़ाइलों को ले भी शामिल है) की योजना है।
उसी समय कोई अन्य शाखा पर एक ही परियोजना पर काम कर रहा है।
कुछ समय में मैं शाखा में किए गए परिवर्तनों को ट्रंक में विलय करना चाहता हूं। इसमें फाइलों (शाखा पर) में किए गए परिवर्तन शामिल हैं जिनका नाम ट्रंक पर रखा गया है।
मैंने कुछ परीक्षण किए और ऐसा लगता है कि या तो उपversण इन परिवर्तनों का पालन करने में सक्षम नहीं है या मुझे कुछ याद आ रहा है (जो मुझे उम्मीद है)। मैं इस परीक्षण किया निम्न स्क्रिप्ट का उपयोग कर (बैश में काम करना चाहिए, "http://myserver/svn/sandbox" पर एक SVN भंडार मान लिया गया):
svn co http://myserver/svn/sandbox
cd sandbox/
mkdir -p MyProject/trunk MyProject/branches MyProject/tags
cat - <<EOF >MyProject/trunk/FileOne.txt
Test
1
2
EOF
svn add MyProject
svn commit -m "init"
# create a branch
svn copy http://myserver/svn/sandbox/MyProject/trunk http://myserver/svn/sandbox/MyProject/branches/Branch_1 svn copy http://myserver/svn/sandbox/MyProject/trunk http://myserver/svn/sandbox/MyProject/branches/Branch_1
# rename the file
svn move MyProject/trunk/FileOne.txt MyProject/trunk/FileTwo.txt
svn commit -m "renamed file"
svn update
# change the content of FileOne in branch
cat - <<EOF >MyProject/branches/Branch_1/FileOne.txt
Test
2
3
EOF
svn commit -m "changed branch"
# I now try to merge the changes in FileOne back to FileTwo
cd MyProject/trunk/
svn merge -r1:HEAD http://myserver/svn/sandbox/MyProject/branches/Branch_1
# but this yields the following message:
# Skipped missing target: 'FileOne.txt'
किसी भी मदद की बहुत सराहना कर रहा है।
संपादित करें: शायद प्रक्रिया mikegrb ने सुझाव दिया कुछ हद तक से पहले ट्रंक पर SVN लॉग आदेश से नाम बदली गई फ़ाइलें (old-> नया) का एक नक्शा उत्पन्न करके स्वचालित सकता है:
svn log -v
------------------------------------------------------------------------
r33 | sme | 2008-10-09 15:17:54 +0200 (Do, 09 Okt 2008) | 1 line
Changed paths:
D /MyProject/trunk/FileOne.txt
A /MyProject/trunk/FileTwo.txt (from /MyProject/trunk/FileOne.txt:31)
resulting map: {FileOne.txt => FileTwo.txt}
अब इस का उपयोग शाखा पर जेनरेट की गई पैच फ़ाइल में फ़ाइल नाम बदलने के लिए मानचित्र।
मूल:
Index: FileOne.txt
===================================================================
--- FileOne.txt (.../trunk) (revision 31)
+++ FileOne.txt (.../branches/Branch_1) (revision 34)
@@ -1,3 +1,3 @@
Test
-1
2
+3
संशोधित:
Index: FileTwo.txt
===================================================================
--- FileTwo.txt (.../trunk) (revision 31)
+++ FileTwo.txt (.../branches/Branch_1) (revision 34)
@@ -1,3 +1,3 @@
Test
-1
2
+3
केवल एक विचार है, यह अभी तक नहीं किया है।
ऐसा लगता है कि उन्होंने इस बग को संस्करण 1.8 पर धक्का दिया। 'अभी तक नहीं' कहने का एक और तरीका कौन सा है। चूंकि यह 2002 के बाद से खुला है क्योंकि यह 'कभी नहीं' की तरह अधिक से अधिक दिखने लगा है। –
@deft_code क्या यह बग तय किया गया है? मुझे लगता है कि मैं अभी कुछ ऐसा अनुभव कर रहा हूं। मैंने टोर्टोइसेवन्स का नाम बदलकर दो फाइलों का नाम बदल दिया, और अब जब मैं ट्रंक से मेरी शाखा में विलय करने की कोशिश करता हूं (यह जांचने के लिए कि क्या यह ट्रंक में फिर से जुड़ने से पहले संकलित है) यह कहता है कि "गायब लक्ष्य छोड़ दिया गया है" – TravisG
@TravisG - बग का संदर्भ है संभवतः 1.8 में तय किया जा सकता है, जो इस सप्ताह बाहर आ सकता है (एक गिट रिलीज था, संस्करण के बारे में सुनिश्चित नहीं है)। मैं अभी भी 1.7 पर हूं ... आप किस संस्करण पर हैं? –