2010-08-18 12 views
8

बनाने का प्रयास कर:SVN में नाकाम रहने के प्रति मैं अपने स्थानीय मशीन में भंडार बनाए जाने पर शाखाओं

svnadmin create /home/me/Desktop/svn_test/trunk 

तब भंडार को mydir निर्देशिका आयात करते हैं।

svn import myDir/ file://home/me/Desktop/svn_test/trunk 

अब तक svn चेकआउट, प्रतिबद्ध, अद्यतन ठीक काम करता है।

अब, मैं रिपोजिटरी से शाखा बनाना चाहते हैं, तो मैं ट्यूटोरियल का पालन किया और मार डाला:

(SVN प्रतिलिपि स्रोत गंतव्य)

svn copy file:///home/me/Desktop/svn_test/trunk file:///home/me/Desktop/svn_test/branches 

तो मुझे मिल गया:

svn: Unable to open an ra_local session to URL 
svn: Unable to open repository 'file:///home/me/Desktop/svn_test' 

मैं यहाँ क्या गलत कर रहा हूँ?

सावधानी से नमूना कमांड की जांच करने के बाद, मुझे पता चला कि नीचे की तरह बैकस्लैश हैं, वे क्या हैं? (और अभी भी त्रुटि मिलती है)

svn copy file:///home/me/Desktop/svn_test/trunk \ file:///home/me/Desktop/svn_test/branches \ -m "test" 
svn: Cannot mix repository and working copy sources 
+0

शायद आपके प्रश्न में केवल एक टाइपो है, लेकिन आपको लगता है कि आपकी आयात लाइन में फॉरवर्ड-स्लैश गायब है। – timdev

+0

क्या इससे svn प्रतिलिपि विफल हो जाती है? आयात कमांड ने कोई त्रुटि नहीं डाली और चेकआउट, प्रतिबद्ध आदि जैसे अन्य आदेश ठीक काम कर रहे हैं। मुझे svn कॉपी कमांड के साथ समस्या है। मैंने अधिक जानकारी प्राप्त करने के लिए संपादित किया है, लेकिन वास्तव में यह सुनिश्चित नहीं है कि बैकस्लेश क्या कर रहे हैं। –

उत्तर

7

आप भंडार का निर्माण नहीं किया svn_test

में आप svn_test/ट्रंक

में यह बनाया आप

$ svnadmin create /home/me/Desktop/svn_test 

बजाय चाहते हैं।

जिस तरह से आपने इसे किया, svn_test/trunk repo है, इसलिए subversion svn_test/शाखाओं के बारे में कुछ नहीं कर सकता - क्योंकि यह एक भंडार पथ नहीं है।

(स्पष्टता के लिए) संपादित करें:

$ mkdir /path/to/repo    # NO /trunk! 
$ svnadmin create /path/to/repo  # NO /trunk! 
$ svn import -m "initial import" . file:///path/to/repo/trunk #import into a directory called "/trunk" that lives in the repository 
$ svn co file:///path/to/repo/trunk myproject 
$ cd myproject 
$ # do some stuff to your working copy... 
$ svn commit -m "I made some changes" 
$ # decide you want to make a branch... 
$ svn copy -m "branching for some reason" file:///path/to/repo/trunk file:///path/to/repo/branches/some-branch 

नोट svn import जब तक "ट्रंक" का कोई जिक्र नहीं होता है कि वहाँ:

क्या आप क्या करना चाहते कुछ इस तरह है।

+0

मैंने प्रश्न अपडेट किया है, माफ करना यह टाइपो था इसलिए मैंने वास्तव में/home/me/डेस्कटॉप/svn_test/trunk –

+2

में रिपोजिटरी बनाई है जो आपने देखी गई बैकस्लैश को अनदेखा करें - वे शैल में बहु-पंक्ति कमांड बनाने के लिए हैं। आपकी समस्या अभी भी है कि "ट्रंक" को भंडार नहीं माना जाता है, केवल एक निर्देशिका जो * भंडार में है। उचित डेमो देने के लिए मेरे जवाब को संपादित करना। – timdev

+0

बढ़िया! यह अब काम कर रहा है, धन्यवाद! मैंने अपने प्रोजेक्ट डीआईआर और रिपोजिटरी के बीच ट्रंक के उपयोग को भ्रमित कर दिया। –

संबंधित मुद्दे