तोड़फोड़ का उपयोग कर दो शाखा संशोधन मर्ज करें


95

मैं उन सभी परिवर्तनों को मर्ज करना चाहता हूँ जो Rev 10 और HEAD के बीच http: // url-of-branch-a पर हुए थे और उन्हें http: // url-of-branch-b पर लागू करना था

कुछ इस तरह...

svn merge -r 10:HEAD http://url-of-branch-a 

क्या यह संभव है? यदि हां, तो वाक्य रचना क्या है?

मैं यूनिक्स कमांड लाइन से एसवीएन क्लाइंट चला रहा हूं। SVN क्लाइंट संस्करण 1.4 है

संपादित करें: हाँ, मेरा विशिष्ट समाधान था ...

  1. मेरी कार्यशील प्रतिलिपि के स्थान में परिवर्तन निर्देशिका जो परिवर्तन प्राप्त करना चाहती है (शाखा-बी)
  2. svn मर्ज -r 10: HEAD http: // url-of-branch-a

यह 'ब्रांच-ए' से 'ब्रांच-बी' में बदलाव को मर्ज करता है।


4
आपको यह भी जानना होगा कि शाखा कब ली गई थी। आप अपनी शाखा में संशोधन संख्या प्राप्त करने के लिए इसे (svn log --stop-on-copy) अपनी शाखा में कर सकते हैं।
jmc

@jmc की आपको वर्ष 2008 के बाद से ज़रूरत नहीं है जब SVN 1.5 जारी किया गया था, AFAIR
bahrep

जवाबों:


55

चेकआउट URL ए। ए। कमेटी ए की अपनी वर्किंग कॉपी में यूआरएल बी को मर्ज करने के लिए एसवीएन मर्ज का उपयोग करें।

या इसके विपरीत :)


127

प्रक्रिया इस प्रकार है:

  1. शाखा B ( svn checkout http://branch-b) की एक कार्यशील प्रति स्थापित करें
  2. शाखा A से B की कार्य प्रतिलिपि में परिवर्तन ( svn merge -r 10:HEAD http://branch-a .)
  3. प्रतिबद्ध बी (संघर्षों को हल करने के बाद) कार्य बी को शाखा बी ( svn commit) में

Svn मर्ज शब्दार्थ के लिए मैन पेज (हेल्प फाइल) की जाँच करें। यह आपको दिखाता है कि svn मर्ज हमेशा परिणाम को एक कार्यशील प्रतिलिपि में डंप करता है।

की जाँच करें SVNBook सभी विवरण के लिए।


क्या आप यह भी अंदाजा लगा सकते हैं कि ग्रहण में SVN प्लगइन का उपयोग कैसे करें?
स्नेहल मास

यह मेरे लिए काम करता है: svn मर्ज --force - मिश्रित-संशोधन -r 10: HEAD शाखा-ए
मिन्ह गुयेन

2
हम एचएएडी को संशोधन 10 क्यों निर्दिष्ट करते हैं? स्नैपशॉट के रूप में उपयोग करने के लिए केवल एक संशोधन के बजाय दो संशोधन समापन बिंदु क्यों? कौन सी शाखा "10 से HEAD" का उल्लेख करती है?
अहानजकद

2

ज्यादातर mergesvn रेपो में करने की कोशिश करके भ्रमित करते हैं, हम सीधे svn रेपो में विलय नहीं कर सकते, हम निम्नानुसार स्थानीय मशीन की काम करने की प्रतिलिपि में विलय कर सकते हैं:

  • यह वर्किंग कॉपी destination URLमर्ज (यानी चेकआउट डेस्टिनेशन) की होनी चाहिए ।

  • मर्ज के साथ कार्य की प्रति source URLमर्ज करें।

  • commit गंतव्य के लिए।

बेस्ट प्रैक्टिस : मर्ज इन, मर्ज आउट।

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