svn: ट्रंक के कुछ संशोधन से एक शाखा कैसे बनाएं


116

निम्नलिखित कार्रवाई केवल ट्रंक के सिर संशोधन से एक शाखा बनाएगी। मैं एक विशिष्ट संशोधन से एक शाखा कैसे बना सकता हूं? धन्यवाद।

$ svn copy http://svn.example.com/repos/calc/trunk \
       http://svn.example.com/repos/calc/branches/my-calc-branch \
  -m "Creating a private branch of /calc/trunk."

2
बस ध्यान दें कि दो बैकस्लैश () न्यूलाइन वर्णों को अनदेखा करने के लिए हैं ... और यह svn कमांड का हिस्सा नहीं है
हैरी लाइम

जवाबों:


163

सहायता आदेश देखें:

svn help copy

  -r [--revision] arg      : ARG (some commands also take ARG1:ARG2 range)
                             A revision argument can be one of:
                                NUMBER       revision number
                                '{' DATE '}' revision at start of the date
                                'HEAD'       latest in repository
                                'BASE'       base rev of item's working copy
                                'COMMITTED'  last commit at or before BASE
                                'PREV'       revision just before COMMITTED

अपने उदाहरण का उपयोग करते हुए वास्तव में कमांड लाइन पर इसे निर्दिष्ट करने के लिए:

svn copy -r123 http://svn.example.com/repos/calc/trunk \
    http://svn.example.com/repos/calc/branches/my-calc-branch

123ट्रंक में संशोधन संख्या कहां होगी जिसे आप कॉपी करना चाहते हैं। जैसा कि अन्य ने नोट किया है, आप @ सिंटैक्स का भी उपयोग कर सकते हैं। मैं व्यक्तिगत रूप से URL से # संशोधन के स्पष्ट पृथक्करण को प्राथमिकता देता हूं।

जैसा कि मदद में कहा गया है, आप एक संशोधन को कुछ शब्दों के साथ # बदल सकते हैं:

svn copy -rPREV http://svn.example.com/repos/calc/trunk \
    http://svn.example.com/repos/calc/branches/my-calc-branch

"संचार से ठीक पहले संशोधन" की प्रतिलिपि बनाएगा।


इसके अलावा, ऊपर के उदाहरण में, यदि संशोधन 123नीचे नहीं हुआ है trunk, तो copy ...trunk@123 ...वाक्य रचना Path ...trunk@123 does not exist in revision 768(जहां 768रेपो नवीनतम है) के साथ विफल हो सकता है, जबकि -r 123सही काम करेगा। पुराने एसवीएन ग्राहकों के साथ देखा गया, 1.6 के साथ अभी भी हो सकता है या नहीं।
vladr

3
तर्क -rREV हमेशा काम नहीं करता है। कभी-कभी आपको @REV की आवश्यकता होती है। देखें stackoverflow.com/questions/6591938/...
Mojca

1
होम पेज के माध्यम से मैक ओएस एक्स पर svn, संस्करण 1.7.13 (r1516569) के साथ काम करता है।
काको

35
$ svn copy http://svn.example.com/repos/calc/trunk@192 \
   http://svn.example.com/repos/calc/branches/my-calc-branch \
   -m "Creating a private branch of /calc/trunk."

जहाँ 192 आपके द्वारा निर्दिष्ट संशोधन है

आप इस जानकारी को SVN बुक से प्राप्त कर सकते हैं , विशेष रूप से यहाँ svn copy के बारे में पेज पर


19

"@" वर्ण का उपयोग करके संशोधन जोड़ें:

svn copy http://src@REV http://dev

या, -r [--revision] कमांड लाइन तर्क का उपयोग करें।


इसके लिए धन्यवाद। यह नहीं बता सकता है कि मैन पेज से वर्ग कोष्ठक आवश्यक थे या नहीं। यह पता लगाना चाहिए कि वे EBNF का उपयोग कर रहे थे।
rstackhouse

0

नीचे एक प्रयास करें:

svn copy http://svn.example.com/repos/calc/trunk@rev-no 
       http://svn.example.com/repos/calc/branches/my-calc-branch 
  -m "Creating a private branch of /calc/trunk."  --parents

Svn URL के बीच कोई स्लैश "\" नहीं है।

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