2012-05-18 11 views
6

मैं ग्रहण का उपयोग कर रहा हूं और Subversion (SVN) मेरा नया संस्करण नियंत्रण है।ग्रहण का उपयोग कर एसवीएन में टैग कैसे करें?

अब तक मैं अपने संस्करण नियंत्रण के रूप में Concurrent Versions System (CVS) का उपयोग करते थे और तैनाती ऑपरेशन के बाद मैं इस तरह ग्रहण में Tag as Version साथ अपनी परियोजनाओं को टैग करते थे:
टीम -> 'संस्करण के रूप में टैग ..' -> version- XYZ

अब मैं SVN का उपयोग करके इसे कैसे कर सकता हूं?

उत्तर

4

आपको subclipse या Subversive जैसे ग्रहण सबवर्जन प्लगइन स्थापित करने की आवश्यकता होगी। यह सीवीएस के लिए उपलब्ध एक ही सुविधा प्रदान करेगा।

उदाहरण के लिए, here is the documentation सबवर्सिव का उपयोग करके टैग करने के तरीके पर।

+0

मैंने पहले से ही 'सबवर्सिव' प्लगइन स्थापित किया है। समस्या यह है कि यह 'सीवीएस 'प्रक्रिया की तरह नहीं है। जब मैं टीम -> शाखा/टैग पर क्लिक करता हूं .. तो मुझे रिपॉजिटरी यूआरएल दर्ज करना होगा, क्या आपके पास कोई उदाहरण है? – choop

7

आम तौर पर, SVN तीन रूट स्तर निर्देशिका,

  1. ट्रंक
  2. टैग
  3. शाखाओं

SVN सर्वर में, प्रत्येक परियोजना के लिए, आप एक ही ऊपर निर्देशिका संरचना है है।

'ट्रंक' वह जगह है जहां आप अपना विकासशील कोड आधार रखते हैं।

'टैग' का उपयोग उसी उद्देश्य के लिए किया जाता है जिसे आपने इंगित किया है। यानी संस्करण के लिए।

'शाखाओं' का उपयोग फीचर डेवलपमेंट/व्यक्तिगत विकास जैसी चीजों के लिए किया जाता है।

एक उदाहरण है, चलो कहते हैं कि मैं एक डेटाबेस तुल्यकालन आवेदन जो पायलट रिहाई, Moonshine रिहाई, किलिमंजारो रिहाई, ग्रेट रिहाई और उसके बाद के रूप में बाहर जाना होगा विकासशील हूँ चलो ..

मैं 'ट्रंक' में शुरू और मेरे जारी रखने के लिए चलिए कहते हैं कि 2 महीने में मैं पायलट रिलीज के लिए तैयार हूं ..

फिर मैं 'ट्रंक' का 'टैग' बनाता हूं जिसे मैं 'पायलट टैग' नाम दे सकता हूं जो ग्राहकों को जारी किया जाएगा ..

अब अगली रिलीज के लिए मेरी मुख्य विशेषता विकास जो 'मूनशिन रिलीज' डब्ल्यू है बीमार 'ट्रंक' में जारी है। अगर वे मेरे 'पायलट रिलीज' में तत्काल बग फिक्स या शो-स्टॉपर्स हैं तो वे 'पायलट टैग' में किए जाएंगे और ग्राहकों को तुरंत जारी किए जाएंगे।

हालांकि उपर्युक्त फिक्सेस मेरे 'ट्रंक में नहीं हैं 'कोड, कुछ समय बाद (मूनशिन रिलीज जारी करने से पहले) मैं अपने' पायलट टैग 'में किए गए संशोधनों को' ट्रंक 'में बदल दूंगा।

यहां, संघर्ष हो सकते हैं क्योंकि एक ही कोड लाइनों को 'पायलट टैग' (पहले उल्लेख किए गए बग फिक्सिंग के लिए) और 'ट्रंक' (फीचर संशोधनों/नई रिलीज के विकास के लिए) में संशोधित किया जा सकता था। इस स्थिति में, आपको संघर्षों की सावधानीपूर्वक समीक्षा करना, ऐसे किसी भी संघर्ष को संपादित करना और परिवर्तनों को स्वीकार करना होगा।

TortoiseSVN एसवीएन का उपयोग करने के लिए प्राथमिक ग्राहक उपकरण है।यह आपके विंडोज़ पर सीधे सुविधाओं को एम्बेड करता है, उपर्युक्त कार्यक्षमताओं जैसे कि प्रतिबद्ध, अद्यतन, विलय, शाखा (यानी टैग या शाखा) इत्यादि

और संघर्ष समाधान के लिए मैं व्यक्तिगत रूप से 'तुलना से परे' पसंद करता हूं जो तीसरा है पार्टी आवेदन जो आपको खरीदना है। आप टोर्टोइज एसवीएन को संघर्ष समाधान के लिए आवेदन के रूप में तुलना करने के लिए आमंत्रित करने के लिए सेट कर सकते हैं और यह TortoiseSVN टूल में निर्मित संघर्ष संपादक की तुलना में कहीं बेहतर और उपयोगकर्ता के अनुकूल है।

1

एसवीएन में प्रत्येक चेकइन एक नया संशोधन संख्या बनाता है। एसवीएन संशोधन संख्या आपके टैग के बराबर होनी चाहिए। उत्पादन निर्माण के लिए एसवीएन संशोधन संख्या याद रखें।

0

सबवर्सन में टैगिंग और ब्रांचिंग सीवीएस से अलग-अलग काम करता है। सबवर्सन में, "टैग बनाने के लिए" का मतलब है प्रतिलिपि "टैग" निर्देशिका में एक नई निर्देशिका में एक संशोधन (आमतौर पर हेड, लेकिन यह कुछ अन्य संशोधन हो सकता है) की प्रतिलिपि बनाएँ। यही कारण है कि, जब आप Team->Branch/Tag... पर जाते हैं, तो ग्रहण आपको एक यूआरएल के लिए प्रतिलिपि बनाने के लिए कह रहा है।

सबवर्सन में टैगिंग के अधिक विस्तृत स्पष्टीकरण के लिए this page देखें।

यह समझने में आपकी सहायता के लिए कि "एसवीएन रास्ता" कैसे किया जाता है, मैं ग्रहण पर कोशिश करने से पहले कमांड लाइन से सबवर्जन उपयोग का अभ्यास करने की सलाह दूंगा। या, यदि नहीं, तो कम से कम एक एसवीएन कंसोल खोलें जो कि यह चलता है कि कमांड को देखने के लिए - आप देखेंगे कि टैगिंग ऑपरेशन वास्तव में svn copy है।

+0

उपversण में टैग सुविधा का उपयोग करने में समस्या, "प्रतिलिपि" स्थान ब्राउज़र केवल ट्रंक दिखाती है, क्योंकि यह जांच की जाती है, यह "उच्च" नहीं जा सकती है। इसका मतलब है कि आप अपने टैग डीआईआर में टैग बनाने के लिए उपclipse का उपयोग नहीं कर सकते हैं। मुझे मिला एकमात्र समाधान ग्रहण के बाहर कछुआ एसवीएन में सभी टैगिंग करना है। –

3
टैग करने के लिए

, का उपयोग कर EclipseSubClipse साथ: बटन 'चुनें' और उचित परियोजना में ड्रिल

  • चयन टीम, शाखा/टैग, तो क्लिक करें, फिर 'टैग' निर्देशिका क्लिक करें, और ड्रिल-डाउन आपके अंतिम टैग नाम या किसी भी समान नाम पर जिसे आप बनाने की योजना बना रहे हैं।

  • पूरा यूआरएल बार में कॉपी किया गया है, तो आप इसे किसी भी नए टैग नाम पर सही टैग नाम भाग को संपादित कर सकते हैं।

  • अगला क्लिक करें, HEAD से चुनें (HEAD रेपो पथ का जिक्र कर रहा है जिसे आपने पहले से ही पिछले पृष्ठ पर स्थापित किया है, इसलिए वास्तव में शाखा का प्रमुख हो सकता है)।

    आपको इस बिंदु पर करने के लिए या के बाद से पहले कर सकते हैं, पृष्ठ के दाईं तल पर ड्रॉप-डाउन से ग्रहण 'SVN Console' खोलने के लिए, और देखो सबसे हाल ही में -

  • तरह 'tagging <appName> Release <for reason> version x.y.z'

समाप्त एक टिप्पणी दर्ज करें एसवीएन आदेश उत्पन्न होते हैं और परिणाम होते हैं।

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