2010-06-01 10 views
6

मैं संस्करण नियंत्रण और मेरे वेब आधारित एप्लिकेशन के साथ काम करने की प्रक्रिया बना रहा हूं।एसवीएन विकास और रिलीज प्रक्रिया - स्वच्छता जांच

  1. मैं branches/development के तहत मुख्य विकास कर रहा हूँ और परीक्षण के लिए मेरे विकास सर्वर के साथ रखें कि सिंक में: यह क्या मैं अब तक है।
  2. मैं अपने प्रोजेक्ट में ज़ेंड फ्रेमवर्क लाने के लिए svn:externals का उपयोग करता हूं। मैं रिहाई मैं में दिलचस्पी रखता हूँ के टैग से संशोधन संख्या का उपयोग उदाहरण के लिए, 1.10.5 Release, संशोधन 22306 पर है तो मेरी svn:externals इस तरह दिखता है:।
    • -r 22306 http://framework.zend.com/svn/framework/standard/trunk/library/Zend/ Zend
    • -r 22306 http://framework.zend.com/svn/framework/extras/trunk/library/ZendX/ ZendX
  3. मैं branches/development से trunk से परीक्षण, स्थिर कोड मर्ज करता हूं और उस से एक संस्करण टैग बना देता हूं। मैं फिर उस टैग द्वारा मेरे उत्पादन सर्वर पर किए गए संशोधन को छोड़ देता हूं।

मेरे पास अभी तक हॉटफिक्स के लिए कोई योजना नहीं है, लेकिन मुझे लगता है कि मैं इस तरह की स्थितियों के लिए उत्पादन टैग को बंद कर सकता हूं।

मैं सबवर्सन का उपयोग करने में नया हूं, तो कृपया मुझे बताएं कि क्या मैं कुछ दिख रहा हूं, या कुछ ऐसा कर रहा हूं जो मुझे गधे में काटने जा रहा है।

धन्यवाद!

+2

तो _that's_ क्या बाहरी हैं !!! :) – zvolkov

उत्तर

1

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

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

+0

दुर्भाग्यवश, मेरे पास मेरे वेब सर्वर पर कमांड लाइन एक्सेस नहीं है, इसलिए मैं सिम्लिंक नहीं कर सकता। मैं बीनस्टॉक का उपयोग कर रहा हूं - http://vianstalkapp.com/ मेरे सबवर्जन होस्टिंग के लिए और उनके पास वेब सर्वर पर रिलीज को धक्का देने के लिए एक शानदार टूल है। यह मुझे पिछले संशोधन में बहुत जल्दी वापस करने की अनुमति देता है। – Sonny

+1

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

2

आपका दृष्टिकोण ठीक लगता है लेकिन आप ट्रंक में भी अपना विकास कर सकते हैं और परीक्षण और स्थिर होने पर इसे टैग कर सकते हैं। मुझे यकीन नहीं है कि आप मुख्य विकास के लिए एक अलग शाखा का उपयोग करके क्या हासिल कर रहे हैं।

+1

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

+2

@ सोनी यदि टीम बड़ी है तो शाखाओं में कुछ विशेषताओं को विकसित करने और ट्रंक में या किसी अन्य शाखा में बग फिक्स जैसी चीजें करने के लिए समझदारी हो सकती है। यह एक रिलीज करने का विकल्प देता है जिसमें फिक्स शामिल हैं लेकिन ऐसी सुविधाएं नहीं जो अभी भी विकास में हैं। हालांकि यदि टीम छोटी है और आपको नहीं लगता कि आप रिलीज करने के लिए प्रगति पर किसी भी कोड को छोड़ना चाहते हैं तो आप केवल ट्रंक में विकास कर सकते हैं। स्थिति बदलते समय आप एक दृष्टिकोण से दूसरे दृष्टिकोण में बदल सकते हैं। – Alb

+0

दृष्टिकोण बदलने के बारे में अच्छा बिंदु। सबवर्सन ऐसा करने में बहुत आसान बनाता है! – Sonny

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