2009-04-14 15 views
9

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

हम TortoiseSVN और AnkhSVN का उपयोग कर रहे हैं।

जोड़ने के लिए संपादित: बस स्पष्ट करने के लिए, मैं लापरवाही गलतियों को रोकने के लिए एक विधि की तलाश में हूं, मुझे पहले से ही यह जानकारी कैसे मिलती है। दो लापरवाह गलतियाँ हैं जिन्हें मैं रोकने की कोशिश कर रहा हूं:

  1. गलत शाखा पर काम करना। यदि इसे प्रतिबद्ध करने से पहले पकड़ा जाता है, तो डेवलपर को परिवर्तनों को सही शाखा में वापस विलय करना होगा।
  2. गलत शाखा को प्रतिबद्ध करना। यह सबवर्सन में परिवर्तनों को वापस करने के साथ बिंदु 1 के दर्द को जोड़ती है।

जोड़ने के लिए संपादित: हमने अभी विज़ुअल एसवीएन वीएस प्लगइन पर स्विच किया है और इसमें एक टूलबार है जो वर्तमान कार्यशील प्रति का पथ प्रदर्शित करता है। मुझे वास्तव में आश्वासन पसंद है कि मैं सही शाखा पर काम कर रहा हूं।

उत्तर

2

अंखएसवीएन (विजुअल स्टूडियो में) में आपकी कार्यशील प्रतिलिपि का प्रोजेक्ट यूआरएल लंबित परिवर्तन विंडो (व्यू-> लंबित परिवर्तन) के 'वर्किंग ऑन' फ़ील्ड में प्रदर्शित होता है।

जब आप लंबित परिवर्तन विंडो या वर्किंग कॉपी एक्सप्लोरर में फ़ाइल चुनते हैं (और कई मामलों में भी जब आप समाधान एक्सप्लोरर में फ़ाइल चुनते हैं तो फ़ाइल स्टूडियो प्रोजेक्ट विंडो में फ़ाइल/फ़ोल्डर का यूआरएल भी प्रदर्शित होता है; लेकिन यह परियोजना प्रकार पर निर्भर करता है)।

[अद्यतन:। मैं सिर्फ प्रतिबद्ध संवाद के विस्तार के लिए AnkhSVN issue #581 जोड़ा]:
एक खाली पाठ फ़ाइल नाम "branch_XX" (या किसी भी नाम) बनाएँ और

1

फ़ोल्डर पर राइट क्लिक करें, उपवर्तन टैब पर जाएं, वहां यह प्रोजेक्ट है जो यह लिंक है।

इसके अलावा, प्रतिबद्धता संवाद में, यह संवाद के शीर्ष पर ऐसा कहता है।

+0

पर्याप्त सच है, लेकिन इसने गलतियों को नहीं रोका है। हम आम तौर पर वीएस से काम करते हैं और अंखएसवीएन यूआरएल प्रदर्शित नहीं करता है। शायद यह VisualSVN को देखने का समय है। –

+0

तो अब आप एक अलग सवाल पूछ रहे हैं। –

1
कार्यशील निर्देशिका से

:

svn info 

यूआरएल के लिए शाखा अपने कार्यशील निर्देशिका अंक शामिल होंगे।

< संपादित > देखकर कितने लोगों को कमांड लाइन नापसंद करते हैं, बंद बात मैं TortoiseSVN से मिला "रेपो ब्राउज़र" जो रेपो में अपनी यात्रा का आरंभ पथ के रूप में चयनित शाखा उपयोग करने के लिए लगता है। </संपादित करें >

4

शायद आप एक प्रयोग करने पर विचार करना चाहिए पूर्व प्रतिबद्ध हुक: http://svnbook.red-bean.com/nightly/en/svn.reposadmin.create.html

तो फिर तुम कुछ कर सकते हैं की तरह ही चेकइन 'जारी करने के लिए' है कि विशेष शाखा या ऐसा ही कुछ के लिए टिप्पणी में मंजूरी और अन्यथा एक त्रुटि संदेश वापस।

2

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

एसवीएन लघु URL आपको तुरंत दिखाएगा कि स्थान भंडार में क्या है।

लेकिन यह विस्टा के तहत काम करने के लिए प्रकट नहीं होता है ...

1

बचें काम कर प्रतियां फिर से इस्तेमाल करते हैं। यदि आप रिपोजिटरी में 2 स्थानों पर काम कर रहे हैं, तो उचित रूप से नामित 2 कार्यशील प्रतियां हैं, जैसे: प्रोजेक्ट-ट्रंक, प्रोजेक्ट-रिलीज।

1

यहाँ एक सरल विचार जो मदद कर सकता है है इसे अपनी शाखा में जोड़ें।
इसे प्रतिबद्ध करें और फिर जब आप ट्रंक पर स्विच करते हैं, तो फ़ाइल समाधान एक्सप्लोरर में दिखाई नहीं देगी।

यह बेवकूफ लगता है ... लेकिन यह चाल है।

मुझे उम्मीद है कि वे कुछ ऐसा जोड़ देंगे जो कि अन्य विंडो में जाने के बिना हम किस शाखा का उपयोग कर रहे हैं उसे चिह्नित कर सकते हैं।

0

अंखएसवीएन (विजुअल स्टूडियो में) में, अपने प्रोजेक्ट/समाधान पर राइट क्लिक करें, फिर स्रोत नियंत्रण -> सबवर्जन -> रिपोजिटरी एक्सप्लोरर में चुनें। यह स्वचालित रूप से उस शाखा का चयन करेगा जिस पर आप वर्तमान में काम कर रहे हैं (यानी जिस शाखा को आप स्विच कर रहे हैं)।

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